aboutsummaryrefslogtreecommitdiff
path: root/zencore
diff options
context:
space:
mode:
authorStefan Boberg <[email protected]>2021-09-15 11:27:48 +0200
committerStefan Boberg <[email protected]>2021-09-15 11:27:48 +0200
commit2b9bed6635d95e15847c4d9b602e34d90e277d14 (patch)
tree66fb191150ccbf9f56315a716abd23b25cc1d401 /zencore
parentxmake: added zenhttp dependency to make zen CLI tool buld (diff)
downloadzen-2b9bed6635d95e15847c4d9b602e34d90e277d14.tar.xz
zen-2b9bed6635d95e15847c4d9b602e34d90e277d14.zip
Changed logging implementation
* Code should no longer directly `#include spdlog/spdlog.h`, instead use `#include <zencore/logging.h>` * Instead of explicit calls to `spdlog::info(...)` and such please use the logging macros defined in `zencore/logging.h`. I.e `ZEN_INFO`, `ZEN_DEBUG`, `ZEN_TRACE`, `ZEN_ERROR`, `ZEN_CRITITCAL` * The macros will pick up the "most local" logger via a `Log()` call to retrieve a logger instance. To override the default logger in a class please implement your own `Log()` function
Diffstat (limited to 'zencore')
-rw-r--r--zencore/filesystem.cpp4
-rw-r--r--zencore/include/zencore/logging.h17
-rw-r--r--zencore/iobuffer.cpp2
-rw-r--r--zencore/logging.cpp10
4 files changed, 30 insertions, 3 deletions
diff --git a/zencore/filesystem.cpp b/zencore/filesystem.cpp
index e03c3aa37..329cc241d 100644
--- a/zencore/filesystem.cpp
+++ b/zencore/filesystem.cpp
@@ -4,8 +4,8 @@
#include <zencore/except.h>
#include <zencore/fmtutils.h>
-#include <zencore/logging.h>
#include <zencore/iobuffer.h>
+#include <zencore/logging.h>
#include <zencore/string.h>
#include <zencore/windows.h>
@@ -581,7 +581,7 @@ FileSystemTraversal::TraverseFileSystem(const std::filesystem::path& RootDir, Tr
}
else if (DirInfo->FileAttributes & FILE_ATTRIBUTE_DEVICE)
{
- spdlog::warn("encountered device node during file system traversal: {} found in {}", WideToUtf8(FileName), RootDir);
+ ZEN_WARN("encountered device node during file system traversal: {} found in {}", WideToUtf8(FileName), RootDir);
}
else
{
diff --git a/zencore/include/zencore/logging.h b/zencore/include/zencore/logging.h
index a2404a5e9..eefed4efa 100644
--- a/zencore/include/zencore/logging.h
+++ b/zencore/include/zencore/logging.h
@@ -20,3 +20,20 @@ void InitializeLogging();
void ShutdownLogging();
} // namespace zen::logging
+
+namespace zen {
+spdlog::logger& Log();
+using logging::ConsoleLog;
+} // namespace zen
+
+using zen::ConsoleLog;
+using zen::Log;
+
+// Helper macros for logging
+
+#define ZEN_TRACE(...) Log().trace(__VA_ARGS__)
+#define ZEN_DEBUG(...) Log().debug(__VA_ARGS__)
+#define ZEN_INFO(...) Log().info(__VA_ARGS__)
+#define ZEN_WARN(...) Log().warn(__VA_ARGS__)
+#define ZEN_ERROR(...) Log().error(__VA_ARGS__)
+#define ZEN_CRITICAL(...) Log().critical(__VA_ARGS__)
diff --git a/zencore/iobuffer.cpp b/zencore/iobuffer.cpp
index 10d43498c..14ba77ea6 100644
--- a/zencore/iobuffer.cpp
+++ b/zencore/iobuffer.cpp
@@ -165,7 +165,7 @@ IoBufferExtendedCore::~IoBufferExtendedCore()
if (!Success)
{
- spdlog::warn("Error reported on file handle close!");
+ ZEN_WARN("Error reported on file handle close!");
}
}
diff --git a/zencore/logging.cpp b/zencore/logging.cpp
index 6441fc3bc..9d5a726f5 100644
--- a/zencore/logging.cpp
+++ b/zencore/logging.cpp
@@ -4,6 +4,16 @@
#include <spdlog/sinks/stdout_color_sinks.h>
+namespace zen {
+
+spdlog::logger&
+Log()
+{
+ return *spdlog::default_logger();
+}
+
+} // namespace zen
+
namespace zen::logging {
spdlog::logger&