1 #ifndef LOGGING_FILTERS_GROUP
2 #define LOGGING_FILTERS_GROUP
5 // Name : logging_filters
6 // Author : Chris Koeritz
8 // Copyright (c) 2010-$now By Author. This program is free software; you can
9 // redistribute it and/or modify it under the terms of the GNU General Public
10 // License as published by the Free Software Foundation:
11 // http://www.gnu.org/licenses/gpl.html
12 // or under the terms of the GNU Library license:
13 // http://www.gnu.org/licenses/lgpl.html
14 // at your preference. Those licenses describe your legal rights to this
15 // software, and no other rights or warranties apply.
16 // Please send updates for this code to: fred@gruntose.com -- Thanks, fred.
19 #include <basis/contracts.h>
23 enum logging_filters {
24 // synonyms for filters that are important enough to always show.
25 FILT_FATAL = basis::ALWAYS_PRINT,
26 FILT_ERROR = basis::ALWAYS_PRINT,
27 // the first really selectable filters follow... one might notice a
28 // small similarity to levels available with log4j.
29 DEFINE_FILTER(FILT_WARNING, 1, "Important or unusual condition occurred in the runtime."),
30 DEFINE_FILTER(FILT_INFO, 2, "Information from normal runtime activities."),
31 DEFINE_FILTER(FILT_DEBUG, 3, "Noisy debugging information from objects."),
32 // occasionally useful filters for locally defined categories.
33 DEFINE_FILTER(FILT_UNUSUAL, 4, "Unusual but not necessarily erroneous events."),
34 DEFINE_FILTER(FILT_NETWORK, 5, "Network activity and events."),
35 DEFINE_FILTER(FILT_DATABASE, 6, "Data storage activities or warnings.")