some more docs about resourcetracking
[nobug.git] / doc / logconfiguration.txt
blob2b68eb01db9e2111a44f69eb7f58277f73e78be6
1 [[logconfig]]
2 Configuration
3 ~~~~~~~~~~~~~
5 .Log Levels
7 Each Log macro has a explicit or implicit Log-Level which correspondends to
8 syslog levels. Logging is only emitted when the messages is more severe than a
9 defined limit.
11 [[logdefaults]]
12 .Defaults levels for logging
13 [grid="all"]
14 `````~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
15              , ALPHA, BETA   , RELEASE,
16 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
17 *ringbuffer* , TRACE, INFO   , NOTICE , ringbuffer must always be most verbose
18 *console*    , INFO , NOTICE , -1     , no log to console in release
19 *file*       , TRACE, NOTICE , WARNING,
20 *syslog*     , -1   , NOTICE , WARNING, no syslog for test runs
21 *application*, INFO , WARNING, ERROR  ,
22 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
24 Depending on the build level there is a default logging target and a default
25 limit which is choosen when the user doesn't specify one.
27 The default limits are:
29   * In *ALPHA* builds, `NOBUG_LOG_LIMIT_ALPHA` is used which defaults to `LOG_INFO`
30   * In *BETA* builds, `NOBUG_LOG_LIMIT_BETA` is used and defaults to `LOG_WARNING`
31   * In *RELEASE* builds, `NOBUG_LOG_LIMIT_RELEASE` is used and defaults to `LOG_CRIT`
33 The default targets are:
35   * In *ALPHA* builds, `NOBUG_LOG_TARGET_ALPHA` is used which defaults to
36     `NOBUG_TARGET_CONSOLE`
37   * In *BETA* builds, `NOBUG_LOG_TARGET_BETA` is used and defaults to
38     `NOBUG_TARGET_FILE`
39   * In *RELEASE* builds, `NOBUG_LOG_TARGET_RELEASE` is used and defaults to
40     `NOBUG_TARGET_SYSLOG`
42 You can override all of those values with your own preference. Alternatively
43 `NOBUG_LOG_LIMIT` and `NOBUG_LOG_TARGET` can be defined before
44 including "nobug.h" to override all defaults.