aboutsummaryrefslogtreecommitdiff
path: root/src/zenserver
diff options
context:
space:
mode:
Diffstat (limited to 'src/zenserver')
-rw-r--r--src/zenserver/admin/admin.cpp15
-rw-r--r--src/zenserver/cache/httpstructuredcache.h8
-rw-r--r--src/zenserver/cache/structuredcachestore.cpp5
-rw-r--r--src/zenserver/config.cpp12
-rw-r--r--src/zenserver/diag/diagsvcs.cpp5
-rw-r--r--src/zenserver/diag/logging.cpp4
-rw-r--r--src/zenserver/main.cpp4
-rw-r--r--src/zenserver/projectstore/httpprojectstore.h4
-rw-r--r--src/zenserver/projectstore/projectstore.cpp4
-rw-r--r--src/zenserver/projectstore/projectstore.h9
-rw-r--r--src/zenserver/sentryintegration.cpp20
-rw-r--r--src/zenserver/sentryintegration.h5
-rw-r--r--src/zenserver/upstream/jupiter.h12
-rw-r--r--src/zenserver/upstream/upstreamcache.cpp13
-rw-r--r--src/zenserver/upstream/zen.h12
-rw-r--r--src/zenserver/zenserver.h2
16 files changed, 71 insertions, 63 deletions
diff --git a/src/zenserver/admin/admin.cpp b/src/zenserver/admin/admin.cpp
index 83f33d4ea..00a5c79ed 100644
--- a/src/zenserver/admin/admin.cpp
+++ b/src/zenserver/admin/admin.cpp
@@ -5,6 +5,7 @@
#include <zencore/compactbinarybuilder.h>
#include <zencore/fmtutils.h>
#include <zencore/jobqueue.h>
+#include <zencore/logging.h>
#include <zencore/string.h>
#if ZEN_WITH_TRACE
@@ -23,10 +24,6 @@
#include <chrono>
-ZEN_THIRD_PARTY_INCLUDES_START
-#include <spdlog/spdlog.h>
-ZEN_THIRD_PARTY_INCLUDES_END
-
namespace zen {
HttpAdminService::HttpAdminService(GcScheduler& Scheduler,
@@ -563,8 +560,8 @@ HttpAdminService::HttpAdminService(GcScheduler& Scheduler,
m_Router.RegisterRoute(
"logs",
[this](HttpRouterRequest& Req) {
- CbObjectWriter Obj;
- spdlog::string_view_t LogLevel = spdlog::level::to_string_view(spdlog::get_level());
+ CbObjectWriter Obj;
+ auto LogLevel = logging::level::ToStringView(logging::GetLogLevel());
Obj.AddString("loglevel", std::string_view(LogLevel.data(), LogLevel.size()));
Obj.AddString("Logfile", PathToUtf8(m_LogPaths.AbsLogPath));
Obj.BeginObject("cache");
@@ -615,15 +612,15 @@ HttpAdminService::HttpAdminService(GcScheduler& Scheduler,
}
if (std::string Param(Params.GetValue("loglevel")); Param.empty() == false)
{
- spdlog::level::level_enum NewLevel = spdlog::level::from_str(Param);
- spdlog::string_view_t LogLevel = spdlog::level::to_string_view(NewLevel);
+ logging::level::LogLevel NewLevel = logging::level::ParseLogLevelString(Param);
+ std::string_view LogLevel = logging::level::ToStringView(NewLevel);
if (LogLevel != Param)
{
return Req.ServerRequest().WriteResponse(HttpResponseCode::BadRequest,
HttpContentType::kText,
fmt::format("Invalid log level '{}'", Param));
}
- spdlog::set_level(NewLevel);
+ logging::SetLogLevel(NewLevel);
if (StringBuilder.Size() > 0)
{
StringBuilder.Append(", ");
diff --git a/src/zenserver/cache/httpstructuredcache.h b/src/zenserver/cache/httpstructuredcache.h
index 75ae1711f..57a533029 100644
--- a/src/zenserver/cache/httpstructuredcache.h
+++ b/src/zenserver/cache/httpstructuredcache.h
@@ -12,10 +12,6 @@
#include <memory>
#include <vector>
-namespace spdlog {
-class logger;
-}
-
namespace zen {
struct CacheChunkRequest;
@@ -178,8 +174,8 @@ private:
bool AreDiskWritesAllowed() const;
- spdlog::logger& Log() { return m_Log; }
- spdlog::logger& m_Log;
+ LoggerRef Log() { return m_Log; }
+ LoggerRef m_Log;
ZenCacheStore& m_CacheStore;
HttpStatsService& m_StatsService;
HttpStatusService& m_StatusService;
diff --git a/src/zenserver/cache/structuredcachestore.cpp b/src/zenserver/cache/structuredcachestore.cpp
index db6156ea1..236a0e1d7 100644
--- a/src/zenserver/cache/structuredcachestore.cpp
+++ b/src/zenserver/cache/structuredcachestore.cpp
@@ -40,6 +40,7 @@ ZEN_THIRD_PARTY_INCLUDES_END
# include <zencore/workthreadpool.h>
# include <zenstore/cidstore.h>
# include <random>
+# include <unordered_map>
#endif
namespace zen {
@@ -310,9 +311,9 @@ ZenCacheStore::LogWorker()
{
SetCurrentThreadName("ZenCacheStore::LogWorker");
- spdlog::logger& ZCacheLog(logging::Get("z$"));
+ LoggerRef ZCacheLog(logging::Get("z$"));
- auto Log = [&ZCacheLog]() { return ZCacheLog; };
+ auto Log = [&ZCacheLog]() -> LoggerRef { return ZCacheLog; };
std::vector<AccessLogItem> Items;
while (true)
diff --git a/src/zenserver/config.cpp b/src/zenserver/config.cpp
index 43d517520..8fe4213cb 100644
--- a/src/zenserver/config.cpp
+++ b/src/zenserver/config.cpp
@@ -23,8 +23,12 @@ ZEN_THIRD_PARTY_INCLUDES_END
# include <conio.h>
#else
# include <pwd.h>
+# include <unistd.h>
#endif
+#include <unordered_map>
+#include <unordered_set>
+
#if ZEN_PLATFORM_WINDOWS
// Used for getting My Documents for default data directory
@@ -1325,9 +1329,9 @@ ParseCliOptions(int argc, char* argv[], ZenServerOptions& ServerOptions)
if (result.count("help"))
{
- zen::logging::ConsoleLog().info("{}", options.help());
+ ZEN_CONSOLE("{}", options.help());
#if ZEN_PLATFORM_WINDOWS
- zen::logging::ConsoleLog().info("Press any key to exit!");
+ ZEN_CONSOLE("Press any key to exit!");
_getch();
#else
// Assume the user's in a terminal on all other platforms and that
@@ -1368,13 +1372,13 @@ ParseCliOptions(int argc, char* argv[], ZenServerOptions& ServerOptions)
}
catch (cxxopts::OptionParseException& e)
{
- zen::logging::ConsoleLog().error("Error parsing zenserver arguments: {}\n\n{}", e.what(), options.help());
+ ZEN_CONSOLE_ERROR("Error parsing zenserver arguments: {}\n\n{}", e.what(), options.help());
throw;
}
catch (zen::OptionParseException& e)
{
- zen::logging::ConsoleLog().error("Error parsing zenserver arguments: {}\n\n{}", e.what(), options.help());
+ ZEN_CONSOLE_ERROR("Error parsing zenserver arguments: {}\n\n{}", e.what(), options.help());
throw;
}
diff --git a/src/zenserver/diag/diagsvcs.cpp b/src/zenserver/diag/diagsvcs.cpp
index 93c2eafc3..1d62b4d17 100644
--- a/src/zenserver/diag/diagsvcs.cpp
+++ b/src/zenserver/diag/diagsvcs.cpp
@@ -11,7 +11,10 @@
#include <fstream>
#include <sstream>
+ZEN_THIRD_PARTY_INCLUDES_START
+#include <spdlog/logger.h>
#include <json11.hpp>
+ZEN_THIRD_PARTY_INCLUDES_END
namespace zen {
@@ -75,7 +78,7 @@ HttpHealthService::HttpHealthService()
[this](HttpRouterRequest& RoutedReq) {
HttpServerRequest& HttpReq = RoutedReq.ServerRequest();
- zen::Log().flush();
+ zen::Log().SpdLogger->flush();
std::filesystem::path Path = [&] {
RwLock::SharedLockScope _(m_InfoLock);
diff --git a/src/zenserver/diag/logging.cpp b/src/zenserver/diag/logging.cpp
index 6a27ea13e..e2d57b840 100644
--- a/src/zenserver/diag/logging.cpp
+++ b/src/zenserver/diag/logging.cpp
@@ -11,6 +11,10 @@
#include <zenutil/logging.h>
#include <zenutil/logging/rotatingfilesink.h>
+ZEN_THIRD_PARTY_INCLUDES_START
+#include <spdlog/spdlog.h>
+ZEN_THIRD_PARTY_INCLUDES_END
+
namespace zen {
void
diff --git a/src/zenserver/main.cpp b/src/zenserver/main.cpp
index b83964319..69cc2bbf5 100644
--- a/src/zenserver/main.cpp
+++ b/src/zenserver/main.cpp
@@ -244,7 +244,7 @@ ZenEntryPoint::Run()
}
catch (std::exception& e)
{
- SPDLOG_CRITICAL("Caught exception in main: {}", e.what());
+ ZEN_CRITICAL("Caught exception in main: {}", e.what());
if (!IsApplicationExitRequested())
{
RequestApplicationExit(1);
@@ -297,7 +297,7 @@ test_main(int argc, char** argv)
zen::z$service_forcelink();
zen::logging::InitializeLogging();
- spdlog::set_level(spdlog::level::debug);
+ zen::logging::SetLogLevel(zen::logging::level::Debug);
zen::MaximizeOpenFileCount();
diff --git a/src/zenserver/projectstore/httpprojectstore.h b/src/zenserver/projectstore/httpprojectstore.h
index ac12d4d7c..9998ae83e 100644
--- a/src/zenserver/projectstore/httpprojectstore.h
+++ b/src/zenserver/projectstore/httpprojectstore.h
@@ -81,9 +81,9 @@ private:
void HandleOplogDetailsRequest(HttpRouterRequest& Req);
void HandleOplogOpDetailsRequest(HttpRouterRequest& Req);
- inline spdlog::logger& Log() { return m_Log; }
+ inline LoggerRef Log() { return m_Log; }
- spdlog::logger& m_Log;
+ LoggerRef m_Log;
CidStore& m_CidStore;
HttpRequestRouter m_Router;
Ref<ProjectStore> m_ProjectStore;
diff --git a/src/zenserver/projectstore/projectstore.cpp b/src/zenserver/projectstore/projectstore.cpp
index ba30dcd7b..9fedd9165 100644
--- a/src/zenserver/projectstore/projectstore.cpp
+++ b/src/zenserver/projectstore/projectstore.cpp
@@ -454,7 +454,7 @@ struct ProjectStore::OplogStorage : public RefCounted
uint32_t GetMaxLsn() const { return m_MaxLsn.load(); }
- spdlog::logger& Log() { return m_OwnerOplog->Log(); }
+ LoggerRef Log() { return m_OwnerOplog->Log(); }
private:
ProjectStore::Oplog* m_OwnerOplog;
@@ -1349,7 +1349,7 @@ ProjectStore::Project::WriteAccessTimes()
}
}
-spdlog::logger&
+LoggerRef
ProjectStore::Project::Log()
{
return m_ProjectStore->Log();
diff --git a/src/zenserver/projectstore/projectstore.h b/src/zenserver/projectstore/projectstore.h
index fbff1444d..fe1068485 100644
--- a/src/zenserver/projectstore/projectstore.h
+++ b/src/zenserver/projectstore/projectstore.h
@@ -13,6 +13,7 @@ ZEN_THIRD_PARTY_INCLUDES_START
ZEN_THIRD_PARTY_INCLUDES_END
#include <map>
+#include <unordered_map>
namespace zen {
@@ -123,7 +124,7 @@ public:
const std::filesystem::path& TempPath() const { return m_TempPath; }
const std::filesystem::path& MarkerPath() const { return m_MarkerPath; }
- spdlog::logger& Log() { return m_OuterProject->Log(); }
+ LoggerRef Log() { return m_OuterProject->Log(); }
void Flush();
void ScrubStorage(ScrubContext& Ctx) const;
void GatherReferences(GcContext& GcCtx);
@@ -242,7 +243,7 @@ public:
[[nodiscard]] static bool Exists(const std::filesystem::path& BasePath);
void Flush();
void ScrubStorage(ScrubContext& Ctx);
- spdlog::logger& Log();
+ LoggerRef Log();
void GatherReferences(GcContext& GcCtx);
uint64_t TotalSize() const;
bool PrepareForDelete(std::filesystem::path& OutDeletePath);
@@ -285,7 +286,7 @@ public:
void DiscoverProjects();
void IterateProjects(std::function<void(Project& Prj)>&& Fn);
- spdlog::logger& Log() { return m_Log; }
+ LoggerRef Log() { return m_Log; }
const std::filesystem::path& BasePath() const { return m_ProjectBasePath; }
virtual void GatherReferences(GcContext& GcCtx) override;
@@ -368,7 +369,7 @@ public:
bool AreDiskWritesAllowed() const;
private:
- spdlog::logger& m_Log;
+ LoggerRef m_Log;
GcManager& m_Gc;
CidStore& m_CidStore;
JobQueue& m_JobQueue;
diff --git a/src/zenserver/sentryintegration.cpp b/src/zenserver/sentryintegration.cpp
index 10a05c3c8..755fe97db 100644
--- a/src/zenserver/sentryintegration.cpp
+++ b/src/zenserver/sentryintegration.cpp
@@ -16,6 +16,10 @@
# include <pwd.h>
#endif
+ZEN_THIRD_PARTY_INCLUDES_START
+#include <spdlog/spdlog.h>
+ZEN_THIRD_PARTY_INCLUDES_END
+
#if ZEN_USE_SENTRY
# define SENTRY_BUILD_STATIC 1
ZEN_THIRD_PARTY_INCLUDES_START
@@ -162,23 +166,23 @@ SentryLogFunction(sentry_level_t Level, const char* Message, va_list Args, [[may
switch (Level)
{
case SENTRY_LEVEL_DEBUG:
- ConsoleLog().debug("sentry: {}", MessagePtr);
+ ZEN_CONSOLE_DEBUG("sentry: {}", MessagePtr);
break;
case SENTRY_LEVEL_INFO:
- ConsoleLog().info("sentry: {}", MessagePtr);
+ ZEN_CONSOLE_INFO("sentry: {}", MessagePtr);
break;
case SENTRY_LEVEL_WARNING:
- ConsoleLog().warn("sentry: {}", MessagePtr);
+ ZEN_CONSOLE_WARN("sentry: {}", MessagePtr);
break;
case SENTRY_LEVEL_ERROR:
- ConsoleLog().error("sentry: {}", MessagePtr);
+ ZEN_CONSOLE_ERROR("sentry: {}", MessagePtr);
break;
case SENTRY_LEVEL_FATAL:
- ConsoleLog().critical("sentry: {}", MessagePtr);
+ ZEN_CONSOLE_CRITICAL("sentry: {}", MessagePtr);
break;
}
}
@@ -192,7 +196,7 @@ SentryIntegration::~SentryIntegration()
{
if (m_IsInitialized && m_SentryErrorCode == 0)
{
- logging::SetErrorLog(std::shared_ptr<spdlog::logger>());
+ logging::SetErrorLog("");
m_SentryAssert.reset();
sentry_close();
}
@@ -250,8 +254,8 @@ SentryIntegration::Initialize(std::string SentryDatabasePath, std::string Sentry
sentry_set_user(SentryUserObject);
}
- auto SentrySink = spdlog::create<sentry::sentry_sink>("sentry");
- logging::SetErrorLog(std::move(SentrySink));
+ m_SentryLogger = spdlog::create<sentry::sentry_sink>("sentry");
+ logging::SetErrorLog("sentry");
m_SentryAssert = std::make_unique<sentry::SentryAssertImpl>();
}
diff --git a/src/zenserver/sentryintegration.h b/src/zenserver/sentryintegration.h
index f25cf5dce..fddba8882 100644
--- a/src/zenserver/sentryintegration.h
+++ b/src/zenserver/sentryintegration.h
@@ -18,6 +18,10 @@
# include <memory>
+ZEN_THIRD_PARTY_INCLUDES_START
+# include <spdlog/logger.h>
+ZEN_THIRD_PARTY_INCLUDES_END
+
namespace sentry {
struct SentryAssertImpl;
@@ -42,6 +46,7 @@ private:
bool m_AllowPII = false;
std::unique_ptr<sentry::SentryAssertImpl> m_SentryAssert;
std::string m_SentryUserName;
+ std::shared_ptr<spdlog::logger> m_SentryLogger;
};
} // namespace zen
diff --git a/src/zenserver/upstream/jupiter.h b/src/zenserver/upstream/jupiter.h
index ca84905d2..467f28501 100644
--- a/src/zenserver/upstream/jupiter.h
+++ b/src/zenserver/upstream/jupiter.h
@@ -131,15 +131,15 @@ public:
CloudCacheClient& Client() { return *m_CacheClient; };
private:
- inline spdlog::logger& Log() { return m_Log; }
- cpr::Session& GetSession();
- CloudCacheAccessToken GetAccessToken(bool RefreshToken = false);
+ inline LoggerRef Log() { return m_Log; }
+ cpr::Session& GetSession();
+ CloudCacheAccessToken GetAccessToken(bool RefreshToken = false);
CloudCacheResult CacheTypeExists(std::string_view Namespace, std::string_view TypeId, const IoHash& Key);
CloudCacheExistsResult CacheTypeExists(std::string_view Namespace, std::string_view TypeId, const std::set<IoHash>& Keys);
- spdlog::logger& m_Log;
+ LoggerRef m_Log;
RefPtr<CloudCacheClient> m_CacheClient;
detail::CloudCacheSessionState* m_SessionState;
};
@@ -195,10 +195,10 @@ public:
std::string_view ComputeCluster() const { return m_ComputeCluster; }
std::string_view ServiceUrl() const { return m_ServiceUrl; }
- spdlog::logger& Logger() { return m_Log; }
+ LoggerRef Logger() { return m_Log; }
private:
- spdlog::logger& m_Log;
+ LoggerRef m_Log;
std::string m_ServiceUrl;
std::string m_DefaultDdcNamespace;
std::string m_DefaultBlobStoreNamespace;
diff --git a/src/zenserver/upstream/upstreamcache.cpp b/src/zenserver/upstream/upstreamcache.cpp
index 5f711d0bc..8e00f86b0 100644
--- a/src/zenserver/upstream/upstreamcache.cpp
+++ b/src/zenserver/upstream/upstreamcache.cpp
@@ -29,7 +29,6 @@
#include <atomic>
#include <shared_mutex>
#include <thread>
-#include <unordered_map>
namespace zen {
@@ -753,10 +752,10 @@ namespace detail {
return {.Bytes = TotalBytes, .ElapsedSeconds = TotalElapsedSeconds, .Success = true};
}
- spdlog::logger& Log() { return m_Log; }
+ LoggerRef Log() { return m_Log; }
AuthMgr& m_AuthMgr;
- spdlog::logger& m_Log;
+ LoggerRef m_Log;
UpstreamEndpointInfo m_Info;
UpstreamStatus m_Status;
UpstreamEndpointStats m_Stats;
@@ -1460,9 +1459,9 @@ namespace detail {
return m_Endpoints.front();
}
- spdlog::logger& Log() { return m_Log; }
+ LoggerRef Log() { return m_Log; }
- spdlog::logger& m_Log;
+ LoggerRef m_Log;
UpstreamEndpointInfo m_Info;
UpstreamStatus m_Status;
UpstreamEndpointStats m_Stats;
@@ -2078,7 +2077,7 @@ private:
}
}
- spdlog::logger& Log() { return m_Log; }
+ LoggerRef Log() { return m_Log; }
using UpstreamQueue = BlockingQueue<UpstreamCacheRecord>;
@@ -2103,7 +2102,7 @@ private:
}
};
- spdlog::logger& m_Log;
+ LoggerRef m_Log;
UpstreamCacheOptions m_Options;
ZenCacheStore& m_CacheStore;
CidStore& m_CidStore;
diff --git a/src/zenserver/upstream/zen.h b/src/zenserver/upstream/zen.h
index bfba8fa98..c1e4fbd0f 100644
--- a/src/zenserver/upstream/zen.h
+++ b/src/zenserver/upstream/zen.h
@@ -20,10 +20,6 @@ ZEN_THIRD_PARTY_INCLUDES_END
struct ZenCacheValue;
-namespace spdlog {
-class logger;
-}
-
namespace zen {
class CbObjectWriter;
@@ -85,9 +81,9 @@ public:
ZenCacheResult InvokeRpc(const CbPackage& Package);
private:
- inline spdlog::logger& Log() { return m_Log; }
+ inline LoggerRef Log() { return m_Log; }
- spdlog::logger& m_Log;
+ LoggerRef m_Log;
Ref<ZenStructuredCacheClient> m_Client;
detail::ZenCacheSessionState* m_SessionState;
};
@@ -105,10 +101,10 @@ public:
std::string_view ServiceUrl() const { return m_ServiceUrl; }
- inline spdlog::logger& Log() { return m_Log; }
+ inline LoggerRef Log() { return m_Log; }
private:
- spdlog::logger& m_Log;
+ LoggerRef m_Log;
std::string m_ServiceUrl;
std::chrono::milliseconds m_ConnectTimeout;
std::chrono::milliseconds m_Timeout;
diff --git a/src/zenserver/zenserver.h b/src/zenserver/zenserver.h
index de069be69..7da536708 100644
--- a/src/zenserver/zenserver.h
+++ b/src/zenserver/zenserver.h
@@ -10,9 +10,7 @@
#include <string_view>
ZEN_THIRD_PARTY_INCLUDES_START
-#include <fmt/format.h>
#include <asio.hpp>
-#include <lua.hpp>
ZEN_THIRD_PARTY_INCLUDES_END
//////////////////////////////////////////////////////////////////////////