From: Philippe Proulx Date: Wed, 14 Jun 2017 02:42:00 +0000 (-0400) Subject: Logging: add colors depending on log level X-Git-Url: http://git.efficios.com/?a=commitdiff_plain;h=557d8f3969212af3726d8e9afd9dc49eb780550d;p=babeltrace.git Logging: add colors depending on log level The whole line is colored and this indicates the log level. VERBOSE: no color DEBUG: no color INFO: blue WARN: yellow ERROR: red FATAL: red Signed-off-by: Philippe Proulx Signed-off-by: Jérémie Galarneau --- diff --git a/logging/log.c b/logging/log.c index 4bd5014d..adac547e 100644 --- a/logging/log.c +++ b/logging/log.c @@ -5,6 +5,7 @@ */ #include +#include /* When defined, Android log (android/log.h) will be used by default instead of * stderr (ignored on non-Android platforms). Date, time, pid and tid (context) @@ -1253,6 +1254,31 @@ static void _bt_log_write_imp( msg.lvl = lvl; msg.tag = tag; g_buffer_cb(&msg, buf); + const char *rst_color_p = bt_common_color_reset(); + const char *rst_color_e = rst_color_p + strlen(rst_color_p); + const char *color_p = ""; + const char *color_e = color_p; + + switch (lvl) { + case BT_LOG_INFO: + color_p = bt_common_color_fg_blue(); + color_e = color_p + strlen(color_p); + break; + case BT_LOG_WARN: + color_p = bt_common_color_fg_yellow(); + color_e = color_p + strlen(color_p); + break; + case BT_LOG_ERROR: + case BT_LOG_FATAL: + color_p = bt_common_color_fg_red(); + color_e = color_p + strlen(color_p); + break; + default: + break; + } + + msg.p = put_stringn(color_p, color_e, msg.p, msg.e); + if (BT_LOG_PUT_CTX & mask) { put_ctx(&msg); @@ -1269,6 +1295,7 @@ static void _bt_log_write_imp( { put_msg(&msg, fmt, va); } + msg.p = put_stringn(rst_color_p, rst_color_e, msg.p, msg.e); log->output->callback(&msg, log->output->arg); if (0 != mem && BT_LOG_PUT_MSG & mask) { diff --git a/python-plugin-provider/Makefile.am b/python-plugin-provider/Makefile.am index b80fb4f9..c4060cfd 100644 --- a/python-plugin-provider/Makefile.am +++ b/python-plugin-provider/Makefile.am @@ -13,5 +13,6 @@ libbabeltrace_python_plugin_provider_la_LIBADD = if !BUILT_IN_PLUGINS libbabeltrace_python_plugin_provider_la_LIBADD += \ - $(top_builddir)/logging/libbabeltrace-logging.la + $(top_builddir)/logging/libbabeltrace-logging.la \ + $(top_builddir)/common/libbabeltrace-common.la endif