Merge branch 'devel'
[nobug.git] / doc / logging.txt
blob35f0911bad4d4022ab8ed3468e4f02e6ed7af3c4
1 HEAD- Logging;;
3 Nearly all NoBug Macros emit some log message. NoBug gives the user fine
4 grained control over these log messages to display only interesting information
5 without loosing details.
7 Log messages are routed to different destinations which are:
9   *RINGBUFFER*::
10         The underlying storage backend. Messages are appended to the
11         end of the buffer, overwriting older messages at the front of
12         the buffer. NoBug comes with a highly efficient ringbuffer
13         implementation. This ringbuffer is temporary by default but
14         can be made persistent on disk which can be inspected with the
15         'nobug_rbdump' tool.
17   *CONSOLE*::
18         This is either just stderr or if running under a supported
19         debugger then its facilities to print messages will be used.
21   *FILE*::
22         The user can open files for log messages.
24   *SYSLOG*::
25         Messages are send to the standard system logging daemon.
27   *APPLICATION*::
28         There is are hooks which allows the programmer to catch logmessages and
29         display them in a application defined way.
31 Each logmessage has a priority describing its severity in the same way as
32 syslog messages do.
34 All non-fatal messages are associated with a programmer defined flag describing
35 the source of the message (subsystem, module, ...).
37 Putting it all together: A user can define which source/flag shall be logged at
38 what priority level and to which destination. To make this all easier NoBug
39 tries to give reasonable defaults.