aboutsummaryrefslogtreecommitdiff
path: root/src/zen/zen.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/zen/zen.cpp')
-rw-r--r--src/zen/zen.cpp53
1 files changed, 20 insertions, 33 deletions
diff --git a/src/zen/zen.cpp b/src/zen/zen.cpp
index 713a0d66d..4e6161e86 100644
--- a/src/zen/zen.cpp
+++ b/src/zen/zen.cpp
@@ -33,6 +33,7 @@
#include <zencore/string.h>
#include <zencore/trace.h>
#include <zenhttp/httpcommon.h>
+#include <zenutil/logging.h>
#include <zenutil/zenserverprocess.h>
#include <zencore/memory/fmalloc.h>
@@ -377,31 +378,6 @@ main(int argc, char** argv)
using namespace zen;
using namespace std::literals;
- zen::logging::InitializeLogging();
-
- // Set output mode to handle virtual terminal sequences
- zen::logging::EnableVTMode();
- std::set_terminate([]() {
- void* Frames[8];
- uint32_t FrameCount = GetCallstack(2, 8, Frames);
- CallstackFrames* Callstack = CreateCallstack(FrameCount, Frames);
- ZEN_CRITICAL("Program exited abnormally via std::terminate()\n{}", CallstackToString(Callstack, " "));
- FreeCallstack(Callstack);
- });
-
- LoggerRef DefaultLogger = zen::logging::Default();
- auto& Sinks = DefaultLogger.SpdLogger->sinks();
-
- Sinks.clear();
- auto ConsoleSink = std::make_shared<spdlog::sinks::ansicolor_stdout_sink_mt>();
- Sinks.push_back(ConsoleSink);
-
- zen::MaximizeOpenFileCount();
-
- //////////////////////////////////////////////////////////////////////////
-
- auto _ = zen::MakeGuard([] { spdlog::shutdown(); });
-
AttachCommand AttachCmd;
BenchCommand BenchCmd;
BuildsCommand BuildsCmd;
@@ -674,14 +650,25 @@ main(int argc, char** argv)
exit(0);
}
- if (GlobalOptions.IsDebug)
- {
- logging::SetLogLevel(logging::level::Debug);
- }
- if (GlobalOptions.IsVerbose)
- {
- logging::SetLogLevel(logging::level::Trace);
- }
+ zen::LoggingOptions LogOptions;
+ LogOptions.IsDebug = GlobalOptions.IsDebug;
+ LogOptions.IsVerbose = GlobalOptions.IsVerbose;
+ LogOptions.AllowAsync = false;
+ zen::InitializeLogging(LogOptions);
+
+ std::set_terminate([]() {
+ void* Frames[8];
+ uint32_t FrameCount = GetCallstack(2, 8, Frames);
+ CallstackFrames* Callstack = CreateCallstack(FrameCount, Frames);
+ ZEN_CRITICAL("Program exited abnormally via std::terminate()\n{}", CallstackToString(Callstack, " "));
+ FreeCallstack(Callstack);
+ });
+
+ zen::MaximizeOpenFileCount();
+
+ //////////////////////////////////////////////////////////////////////////
+
+ auto _ = zen::MakeGuard([] { zen::ShutdownLogging(); });
#if ZEN_WITH_TRACE
if (TraceHost.size())