summaryrefslogtreecommitdiff
path: root/include/boltdbg/util/logger.h
diff options
context:
space:
mode:
authorLevent Kaya <levent@dev>2025-11-06 11:49:26 +0300
committerLevent Kaya <levent@dev>2025-11-06 11:49:26 +0300
commitc804988f70ad580b45ab5adda64022f462dc6599 (patch)
tree2568944c8a7d0950a5bff73bd2905109e123a4a3 /include/boltdbg/util/logger.h
parentd2bb3c90b4e8dffaabb2315df13a2dbd362bb1b7 (diff)
[feature] global logger implemented
Diffstat (limited to 'include/boltdbg/util/logger.h')
-rw-r--r--include/boltdbg/util/logger.h26
1 files changed, 26 insertions, 0 deletions
diff --git a/include/boltdbg/util/logger.h b/include/boltdbg/util/logger.h
new file mode 100644
index 0000000..554f2c7
--- /dev/null
+++ b/include/boltdbg/util/logger.h
@@ -0,0 +1,26 @@
+#ifndef BOLTDBG_UTIL_LOGGER_H_
+#define BOLTDBG_UTIL_LOGGER_H_
+
+/*
+ * Global spdlog accessor for boltdbg.
+ *
+ * Use Log::get() anywhere to obtain the shared logger.
+ */
+
+#include <memory>
+#include <spdlog/spdlog.h>
+
+namespace Log { // NOTE: capital 'L' to avoid collision with C math 'log'
+ // Return a reference to a shared_ptr logger initialized on first use.
+ std::shared_ptr<spdlog::logger>& get();
+}
+
+// Handy logger macros (use Log with capital L)
+#define LOG_TRACE(...) ::Log::get()->trace(__VA_ARGS__)
+#define LOG_DEBUG(...) ::Log::get()->debug(__VA_ARGS__)
+#define LOG_INFO(...) ::Log::get()->info(__VA_ARGS__)
+#define LOG_WARN(...) ::Log::get()->warn(__VA_ARGS__)
+#define LOG_ERROR(...) ::Log::get()->error(__VA_ARGS__)
+#define LOG_CRITICAL(...) ::Log::get()->critical(__VA_ARGS__)
+
+#endif // BOLTDBG_UTIL_LOGGER_H_