summaryrefslogtreecommitdiff
path: root/include/ouroboros/logs.h
diff options
context:
space:
mode:
authordimitri staessens <dimitri.staessens@intec.ugent.be>2016-03-23 23:18:56 +0100
committerdimitri staessens <dimitri.staessens@intec.ugent.be>2016-03-24 10:27:41 +0100
commite0b7acc5ace72dc34561c635d32fb2085765c8ca (patch)
treea7a3a499d03d2d9089480ab2d1a003f9e6ca706a /include/ouroboros/logs.h
parenteb46e3ddc161c543ea268c54f0c6db40019d25c1 (diff)
downloadouroboros-e0b7acc5ace72dc34561c635d32fb2085765c8ca.tar.gz
ouroboros-e0b7acc5ace72dc34561c635d32fb2085765c8ca.zip
lib: updated log message formatting
logs will now display as follows: (EE): error, in red (WW): warning, in yellow (II): info, in green (NI): missing code, in blue (DB): debug messages in white
Diffstat (limited to 'include/ouroboros/logs.h')
-rw-r--r--include/ouroboros/logs.h28
1 files changed, 20 insertions, 8 deletions
diff --git a/include/ouroboros/logs.h b/include/ouroboros/logs.h
index 6f9986dc..344a7ddc 100644
--- a/include/ouroboros/logs.h
+++ b/include/ouroboros/logs.h
@@ -30,21 +30,33 @@
#error You must define OUROBOROS_PREFIX before including this file
#endif
-#define __LOG(PFX, LVL, FMT, ARGS...) \
- do { printf(PFX "(" LVL "): " FMT "\n", ##ARGS); } while (0)
-
-#define LOG_ERR(FMT, ARGS...) __LOG(OUROBOROS_PREFIX, "ERR", FMT, ##ARGS)
-#define LOG_WARN(FMT, ARGS...) __LOG(OUROBOROS_PREFIX, "WARN", FMT, ##ARGS)
-#define LOG_INFO(FMT, ARGS...) __LOG(OUROBOROS_PREFIX, "INFO", FMT, ##ARGS)
+#define ANSI_COLOR_RED "\x1b[31m"
+#define ANSI_COLOR_GREEN "\x1b[32m"
+#define ANSI_COLOR_YELLOW "\x1b[33m"
+#define ANSI_COLOR_BLUE "\x1b[34m"
+#define ANSI_COLOR_RESET "\x1b[0m"
+
+#define __LOG(CLR, PFX, LVL, FMT, ARGS...) \
+ do { printf(CLR PFX "(" LVL "): " FMT ANSI_COLOR_RESET "\n", ##ARGS); }\
+ while (0)
+
+#define LOG_ERR(FMT, ARGS...) __LOG(ANSI_COLOR_RED, OUROBOROS_PREFIX, \
+ "EE", FMT, ##ARGS)
+#define LOG_WARN(FMT, ARGS...) __LOG(ANSI_COLOR_YELLOW, OUROBOROS_PREFIX, \
+ "WW", FMT, ##ARGS)
+#define LOG_INFO(FMT, ARGS...) __LOG(ANSI_COLOR_GREEN, OUROBOROS_PREFIX, \
+ "II", FMT, ##ARGS)
+#define LOG_NI(FMT, ARGS...) __LOG(ANSI_COLOR_BLUE, OUROBOROS_PREFIX, \
+ "NI", FMT, ##ARGS)
#ifdef CONFIG_OUROBOROS_DEBUG
-#define LOG_DBG(FMT, ARGS...) __LOG(OUROBOROS_PREFIX, "DBG", FMT, ##ARGS)
+#define LOG_DBG(FMT, ARGS...) __LOG("", OUROBOROS_PREFIX, "DB", FMT, ##ARGS)
#else
#define LOG_DBG(FMT, ARGS...) do { } while (0)
#endif
#define LOG_DBGF(FMT, ARGS...) LOG_DBG("%s: " FMT, __FUNCTION__, ##ARGS)
-#define LOG_MISSING LOG_ERR("Missing code in %s:%d",__FILE__, __LINE__)
+#define LOG_MISSING LOG_NI("Missing code in %s:%d",__FILE__, __LINE__)
#endif