diff options
-rw-r--r-- | src/shared/log.c | 10 | ||||
-rw-r--r-- | src/shared/log.h | 1 |
2 files changed, 9 insertions, 2 deletions
diff --git a/src/shared/log.c b/src/shared/log.c index 69f23fead0..d4df4dffd3 100644 --- a/src/shared/log.c +++ b/src/shared/log.c @@ -244,14 +244,19 @@ static int write_to_console( const char *object, const char *buffer) { - char location[64]; - struct iovec iovec[5] = {}; + char location[64], prefix[1 + DECIMAL_STR_MAX(int) + 2]; + struct iovec iovec[6] = {}; unsigned n = 0; bool highlight; if (console_fd < 0) return 0; + if (log_target == LOG_TARGET_CONSOLE_PREFIXED) { + sprintf(prefix, "<%i>", level); + IOVEC_SET_STRING(iovec[n++], prefix); + } + highlight = LOG_PRI(level) <= LOG_ERR && show_color; if (show_location) { @@ -540,6 +545,7 @@ int log_get_max_level(void) { } static const char *const log_target_table[] = { [LOG_TARGET_CONSOLE] = "console", + [LOG_TARGET_CONSOLE_PREFIXED] = "console-prefixed", [LOG_TARGET_KMSG] = "kmsg", [LOG_TARGET_SYSLOG] = "syslog", [LOG_TARGET_SYSLOG_OR_KMSG] = "syslog-or-kmsg", diff --git a/src/shared/log.h b/src/shared/log.h index 485f3fa0f6..9d4f64d6cd 100644 --- a/src/shared/log.h +++ b/src/shared/log.h @@ -28,6 +28,7 @@ typedef enum LogTarget{ LOG_TARGET_CONSOLE, + LOG_TARGET_CONSOLE_PREFIXED, LOG_TARGET_KMSG, LOG_TARGET_JOURNAL, LOG_TARGET_JOURNAL_OR_KMSG, |