aboutsummaryrefslogtreecommitdiff
path: root/src/zenserver/diag/diagsvcs.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/zenserver/diag/diagsvcs.cpp')
-rw-r--r--src/zenserver/diag/diagsvcs.cpp37
1 files changed, 33 insertions, 4 deletions
diff --git a/src/zenserver/diag/diagsvcs.cpp b/src/zenserver/diag/diagsvcs.cpp
index d8d53b0e3..dd4b8956c 100644
--- a/src/zenserver/diag/diagsvcs.cpp
+++ b/src/zenserver/diag/diagsvcs.cpp
@@ -9,12 +9,11 @@
#include <zencore/logging.h>
#include <zencore/memory/llm.h>
#include <zencore/string.h>
+#include <zencore/system.h>
#include <fstream>
#include <sstream>
-ZEN_THIRD_PARTY_INCLUDES_START
-#include <spdlog/logger.h>
-ZEN_THIRD_PARTY_INCLUDES_END
+#include <zencore/logging/logger.h>
namespace zen {
@@ -53,6 +52,36 @@ HttpHealthService::HttpHealthService()
Writer << "AbsLogPath"sv << m_HealthInfo.AbsLogPath.string();
Writer << "BuildVersion"sv << m_HealthInfo.BuildVersion;
Writer << "HttpServerClass"sv << m_HealthInfo.HttpServerClass;
+ Writer << "Port"sv << m_HealthInfo.Port;
+ Writer << "Pid"sv << m_HealthInfo.Pid;
+ Writer << "IsDedicated"sv << m_HealthInfo.IsDedicated;
+ Writer << "StartTimeMs"sv << m_HealthInfo.StartTimeMs;
+ }
+
+ Writer.BeginObject("RuntimeConfig"sv);
+ for (const auto& Opt : m_HealthInfo.RuntimeConfig)
+ {
+ Writer << Opt.first << Opt.second;
+ }
+ Writer.EndObject();
+
+ Writer.BeginObject("BuildConfig"sv);
+ for (const auto& Opt : m_HealthInfo.BuildOptions)
+ {
+ Writer << Opt.first << Opt.second;
+ }
+ Writer.EndObject();
+
+ Writer << "Hostname"sv << GetMachineName();
+ Writer << "Platform"sv << GetRuntimePlatformName();
+ Writer << "Arch"sv << GetCpuName();
+ Writer << "OS"sv << GetOperatingSystemVersion();
+
+ {
+ auto Metrics = GetSystemMetrics();
+ Writer.BeginObject("System"sv);
+ Describe(Metrics, Writer);
+ Writer.EndObject();
}
HttpReq.WriteResponse(HttpResponseCode::OK, Writer.Save());
@@ -64,7 +93,7 @@ HttpHealthService::HttpHealthService()
[this](HttpRouterRequest& RoutedReq) {
HttpServerRequest& HttpReq = RoutedReq.ServerRequest();
- zen::Log().SpdLogger->flush();
+ zen::Log().Flush();
std::filesystem::path Path = [&] {
RwLock::SharedLockScope _(m_InfoLock);