summaryrefslogtreecommitdiff
path: root/src/logging.h
diff options
context:
space:
mode:
authorDaniel Dressler <danieru.dressler@gmail.com>2014-07-31 19:35:17 -0600
committerDaniel Dressler <danieru.dressler@gmail.com>2014-07-31 19:35:17 -0600
commitb2ad21942d0175286ab6ebc15e4129a39ca5998d (patch)
treeba388cc5bbf9bb1752205cdf88086235e602c4a2 /src/logging.h
parent7ce32fde8a0cc0daff42bcfe6dc0e04cfdd2ee7c (diff)
Add verbose mode to surpress notices
Diffstat (limited to 'src/logging.h')
-rw-r--r--src/logging.h25
1 files changed, 16 insertions, 9 deletions
diff --git a/src/logging.h b/src/logging.h
index 6f1ed98..e5bffcf 100644
--- a/src/logging.h
+++ b/src/logging.h
@@ -2,6 +2,13 @@
#include <pthread.h> // For pthread_self()
#define TID() (pthread_self())
+enum log_level {
+ LOGGING_ERROR,
+ LOGGING_WARNING,
+ LOGGING_NOTICE,
+ LOGGING_CONFORMANCE,
+};
+
#define PP_CAT(x, y) PP_CAT_2(x, y)
#define PP_CAT_2(x, y) x##y
@@ -11,22 +18,22 @@
#define LOG_OVERLOAD(Name, ...) PP_CAT(Name, LOG_ARITY(__VA_ARGS__))(__VA_ARGS__)
#define ERR(...) LOG_OVERLOAD(ERR_, __VA_ARGS__)
-#define ERR_1(msg) BASE_LOG("<%d>Error: " msg "\n", TID())
-#define ERR_2(msg, ...) BASE_LOG("<%d>Error: " msg "\n", TID(), __VA_ARGS__)
+#define ERR_1(msg) BASE_LOG(LOGGING_ERROR, "<%d>Error: " msg "\n", TID())
+#define ERR_2(msg, ...) BASE_LOG(LOGGING_ERROR, "<%d>Error: " msg "\n", TID(), __VA_ARGS__)
#define WARN(...) LOG_OVERLOAD(WARN_, __VA_ARGS__)
-#define WARN_1(msg) BASE_LOG("<%d>Warning: " msg "\n", TID())
-#define WARN_2(msg, ...) BASE_LOG("<%d>Warning: " msg "\n", TID(), __VA_ARGS__)
+#define WARN_1(msg) BASE_LOG(LOGGING_WARNING, "<%d>Warning: " msg "\n", TID())
+#define WARN_2(msg, ...) BASE_LOG(LOGGING_WARNING, "<%d>Warning: " msg "\n", TID(), __VA_ARGS__)
#define NOTE(...) LOG_OVERLOAD(NOTE_, __VA_ARGS__)
-#define NOTE_1(msg) BASE_LOG("<%d>Note: " msg "\n", TID())
-#define NOTE_2(msg, ...) BASE_LOG("<%d>Note: " msg "\n", TID(), __VA_ARGS__)
+#define NOTE_1(msg) BASE_LOG(LOGGING_NOTICE, "<%d>Note: " msg "\n", TID())
+#define NOTE_2(msg, ...) BASE_LOG(LOGGING_NOTICE, "<%d>Note: " msg "\n", TID(), __VA_ARGS__)
#define CONF(...) LOG_OVERLOAD(CONF_, __VA_ARGS__)
-#define CONF_1(msg) BASE_LOG("<%d>Standard Conformance Failure: " msg "\n", TID())
-#define CONF_2(msg, ...) BASE_LOG("<%d>Standard Conformance Failure: " msg "\n", TID(), __VA_ARGS__)
+#define CONF_1(msg) BASE_LOG(LOGGING_CONFORMANCE, "<%d>Standard Conformance Failure: " msg "\n", TID())
+#define CONF_2(msg, ...) BASE_LOG(LOGGING_CONFORMANCE, "<%d>Standard Conformance Failure: " msg "\n", TID(), __VA_ARGS__)
#define ERR_AND_EXIT(...) do { ERR(__VA_ARGS__); exit(-1);} while (0)
-void BASE_LOG(const char *, ...);
+void BASE_LOG(enum log_level, const char *, ...);