37 #ifndef LOGSYS_H_DEFINED 38 #define LOGSYS_H_DEFINED 48 #include <qb/qbconfig.h> 60 #define LOGSYS_MODE_OUTPUT_FILE (1<<0) 61 #define LOGSYS_MODE_OUTPUT_STDERR (1<<1) 62 #define LOGSYS_MODE_OUTPUT_SYSLOG (1<<2) 63 #define LOGSYS_MODE_FORK (1<<3) 64 #define LOGSYS_MODE_THREADED (1<<4) 69 #define LOGSYS_LEVEL_EMERG LOG_EMERG 70 #define LOGSYS_LEVEL_ALERT LOG_ALERT 71 #define LOGSYS_LEVEL_CRIT LOG_CRIT 72 #define LOGSYS_LEVEL_ERROR LOG_ERR 73 #define LOGSYS_LEVEL_WARNING LOG_WARNING 74 #define LOGSYS_LEVEL_NOTICE LOG_NOTICE 75 #define LOGSYS_LEVEL_INFO LOG_INFO 76 #define LOGSYS_LEVEL_DEBUG LOG_DEBUG 77 #define LOGSYS_LEVEL_TRACE LOG_TRACE 85 #define LOGSYS_MAX_SUBSYS_COUNT 32 86 #define LOGSYS_MAX_SUBSYS_NAMELEN 64 87 #define LOGSYS_MAX_PERROR_MSG_LEN 128 92 #define LOGSYS_DEBUG_OFF 0 93 #define LOGSYS_DEBUG_ON 1 94 #define LOGSYS_DEBUG_TRACE 2 96 #ifndef LOGSYS_UTILS_ONLY 126 unsigned int facility);
136 unsigned int priority);
173 const char **error_string,
184 unsigned int priority);
218 unsigned int priority);
229 const char *mainsystem,
281 #define LOGSYS_DECLARE_SYSTEM(name,mode,syslog_facility,syslog_priority)\ 282 QB_LOG_INIT_DATA(logsys_qb_init); \ 283 __attribute__ ((constructor)) \ 284 static void logsys_system_init (void) \ 286 if (_logsys_system_setup (name,mode,syslog_facility,syslog_priority) < 0) { \ 288 "Unable to setup logging system: %s.\n", name); \ 297 #define LOGSYS_DECLARE_SUBSYS(subsys) \ 298 __attribute__ ((constructor)) \ 299 static void logsys_subsys_init (void) \ 302 _logsys_subsys_create ((subsys), __FILE__); \ 303 if (logsys_subsys_id == -1) { \ 305 "Unable to create logging subsystem: %s.\n", subsys); \ 317 #define LOGSYS_PERROR(err_num, level, fmt, args...) do { \ 318 char _error_str[LOGSYS_MAX_PERROR_MSG_LEN]; \ 319 const char *_error_ptr = qb_strerror_r(err_num, _error_str, sizeof(_error_str)); \ 320 qb_log(level, fmt ": %s (%d)", ##args, _error_ptr, err_num); \ 323 #define log_printf(level, format, args...) qb_log(level, format, ##args) 324 #define ENTER qb_enter 325 #define LEAVE qb_leave 326 #define TRACE1(format, args...) qb_log(LOG_TRACE, "TRACE1:" #format, ##args) 327 #define TRACE2(format, args...) qb_log(LOG_TRACE, "TRACE2:" #format, ##args) 328 #define TRACE3(format, args...) qb_log(LOG_TRACE, "TRACE3:" #format, ##args) 329 #define TRACE4(format, args...) qb_log(LOG_TRACE, "TRACE4:" #format, ##args) 330 #define TRACE5(format, args...) qb_log(LOG_TRACE, "TRACE5:" #format, ##args) 331 #define TRACE6(format, args...) qb_log(LOG_TRACE, "TRACE6:" #format, ##args) 332 #define TRACE7(format, args...) qb_log(LOG_TRACE, "TRACE7:" #format, ##args) 333 #define TRACE8(format, args...) qb_log(LOG_TRACE, "TRACE8:" #format, ##args)
void logsys_blackbox_postfork(void)
cs_error_t logsys_reopen_log_files(void)
const char * logsys_priority_name_get(unsigned int priority)
logsys_priority_name_get
int logsys_config_file_set(const char *subsys, const char **error_string, const char *file)
to close a logfile, just invoke this function with a NULL file or if you want to change logfile...
int _logsys_subsys_create(const char *subsys, const char *filename)
_logsys_subsys_create
void logsys_blackbox_prefork(void)
int logsys_config_debug_set(const char *subsys, unsigned int value)
enabling debug, disable message priority filtering.
#define LOGSYS_MAX_SUBSYS_COUNT
int logsys_config_syslog_facility_set(const char *subsys, unsigned int facility)
per system/subsystem settings.
int logsys_config_mode_set(const char *subsys, unsigned int mode)
logsys_config_mode_set
char subsys[LOGSYS_MAX_SUBSYS_NAMELEN]
int logsys_thread_start(void)
logsys_thread_start
char * logsys_format_get(void)
logsys_format_get
cs_error_t
The cs_error_t enum.
int logsys_config_syslog_priority_set(const char *subsys, unsigned int priority)
logsys_config_syslog_priority_set
int _logsys_system_setup(const char *mainsystem, unsigned int mode, int syslog_facility, int syslog_priority)
_logsys_system_setup
void logsys_blackbox_set(int enable)
void logsys_config_apply(void)
logsys_config_apply
int logsys_priority_id_get(const char *name)
logsys_priority_id_get
int _logsys_config_subsys_get(const char *subsys)
_logsys_config_subsys_get
unsigned int logsys_config_mode_get(const char *subsys)
logsys_config_mode_get
int logsys_config_logfile_priority_set(const char *subsys, unsigned int priority)
logsys_config_logfile_priority_set
int logsys_format_set(const char *format)
configuration bits that can only be done for the whole system
void logsys_system_fini(void)
logsys_system_fini