log.h File Reference

System logging header. More...

Detailed Description

System logging header.

This header offers a bunch of "LOG_*" functions that, with the default implementation, just use printf, but honour a verbosity level.

If desired, it is possible to implement a log module which then will be used instead the default printf-based implementation. In order to do so, the log module has to

  1. provide "log_module.h"
  2. have a name starting with "log_" or depend on the pseudo-module LOG,
  3. implement log_write()

See "sys/log/log_printfnoformat" for an example.

Author
Kaspar Schleiser kaspa.nosp@m.r@sc.nosp@m.hleis.nosp@m.er.d.nosp@m.e

Definition in file log.h.

#include <stdio.h>
+ Include dependency graph for log.h:

Go to the source code of this file.

Macros

#define LOG_LEVEL   LOG_INFO
 Default log level define.
 
#define LOG(level, ...)
 Log message if level <= LOG_LEVEL. More...
 
#define log_write(level, ...)   printf(__VA_ARGS__)
 Default log_write function, just maps to printf.
 
Logging convenience defines
#define LOG_ERROR(...)   LOG(LOG_ERROR, __VA_ARGS__)
 
#define LOG_WARNING(...)   LOG(LOG_WARNING, __VA_ARGS__)
 
#define LOG_INFO(...)   LOG(LOG_INFO, __VA_ARGS__)
 
#define LOG_DEBUG(...)   LOG(LOG_DEBUG, __VA_ARGS__)
 

Enumerations

enum  {
  LOG_NONE, LOG_ERROR, LOG_WARNING, LOG_INFO,
  LOG_DEBUG, LOG_ALL
}
 defined log levels More...