15 #include <glib/gprintf.h> 25 #define ANSI_COLOR_RED "\x1b[31m" 27 #define ANSI_COLOR_GREEN "\x1b[32m" 28 #define ANSI_COLOR_YELLOW "\x1b[33m" 29 #define ANSI_COLOR_BLUE "\x1b[34m" 30 #define ANSI_COLOR_MAGENTA "\x1b[35m" 31 #define ANSI_COLOR_CYAN "\x1b[36m" 32 #define ANSI_COLOR_RESET "\x1b[0m" 55 #define LOG_MAX LOG_DBG 58 static const char *janus_log_prefix[] = {
84 #define JANUS_PRINT janus_vprintf 88 #define JANUS_LOG(level, format, ...) \ 90 if (level > LOG_NONE && level <= LOG_MAX && level <= janus_log_level) { \ 91 char janus_log_ts[64] = ""; \ 92 char janus_log_src[128] = ""; \ 93 if (janus_log_timestamps) { \ 94 struct tm janustmresult; \ 95 time_t janusltime = time(NULL); \ 96 localtime_r(&janusltime, &janustmresult); \ 97 strftime(janus_log_ts, sizeof(janus_log_ts), \ 98 "[%a %b %e %T %Y] ", &janustmresult); \ 100 if (level == LOG_FATAL || level == LOG_ERR || level == LOG_DBG) { \ 101 snprintf(janus_log_src, sizeof(janus_log_src), \ 102 "[%s:%s:%d] ", __FILE__, __FUNCTION__, __LINE__); \ 104 JANUS_PRINT("%s%s%s%s" format, \ 105 janus_log_global_prefix ? janus_log_global_prefix : "", \ 107 janus_log_prefix[level | ((int)janus_log_colors << 3)], \ #define ANSI_COLOR_RED
Definition: debug.h:26
#define ANSI_COLOR_YELLOW
Definition: debug.h:28
#define ANSI_COLOR_RESET
Definition: debug.h:32
gboolean janus_log_colors
Definition: janus-cfgconv.c:36
int janus_log_level
Definition: janus-cfgconv.c:34
gboolean janus_log_timestamps
Definition: janus-cfgconv.c:35
char * janus_log_global_prefix
Definition: janus-cfgconv.c:37
#define ANSI_COLOR_MAGENTA
Definition: debug.h:30
Buffered logging (headers)