aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorStefan Boberg <[email protected]>2023-12-11 11:49:26 +0100
committerGitHub <[email protected]>2023-12-11 11:49:26 +0100
commit7c0eaa5836d595fe4dbcea9d7c66f6444b29fddc (patch)
treea0f190704e3273950496a388a11e4884dd94ba97 /src
parentimproved scrubbing of oplogs and filecas (#596) (diff)
downloadzen-7c0eaa5836d595fe4dbcea9d7c66f6444b29fddc.tar.xz
zen-7c0eaa5836d595fe4dbcea9d7c66f6444b29fddc.zip
added details to trace initialization (#588)
this adds information on program name and command line to trace initialization
Diffstat (limited to 'src')
-rw-r--r--src/zencore/include/zencore/trace.h4
-rw-r--r--src/zencore/trace.cpp16
-rw-r--r--src/zenserver/admin/admin.cpp2
-rw-r--r--src/zenserver/main.cpp6
4 files changed, 17 insertions, 11 deletions
diff --git a/src/zencore/include/zencore/trace.h b/src/zencore/include/zencore/trace.h
index 8ff856fed..2d4c1e610 100644
--- a/src/zencore/include/zencore/trace.h
+++ b/src/zencore/include/zencore/trace.h
@@ -26,10 +26,10 @@ enum class TraceType
None
};
-void TraceInit();
+void TraceInit(std::string_view ProgramName);
void TraceShutdown();
bool IsTracing();
-void TraceStart(const char* HostOrPath, TraceType Type);
+void TraceStart(std::string_view ProgramName, const char* HostOrPath, TraceType Type);
bool TraceStop();
#else
diff --git a/src/zencore/trace.cpp b/src/zencore/trace.cpp
index d71ca0984..f7e4c4b68 100644
--- a/src/zencore/trace.cpp
+++ b/src/zencore/trace.cpp
@@ -9,7 +9,7 @@
# include <zencore/trace.h>
void
-TraceInit()
+TraceInit(std::string_view ProgramName)
{
static std::atomic_bool gInited = false;
bool Expected = false;
@@ -23,14 +23,20 @@ TraceInit()
};
trace::Initialize(Desc);
+# if ZEN_PLATFORM_WINDOWS
+ const char* CommandLineString = GetCommandLineA();
+# else
+ const char* CommandLineString = "";
+# endif
+
trace::ThreadRegister("main", /* system id */ 0, /* sort id */ 0);
- trace::DescribeSession("zenserver",
+ trace::DescribeSession(ProgramName,
# if ZEN_BUILD_DEBUG
trace::Build::Debug,
# else
trace::Build::Development,
# endif
- "",
+ CommandLineString,
ZEN_CFG_VERSION_BUILD_STRING);
}
@@ -48,9 +54,9 @@ IsTracing()
}
void
-TraceStart(const char* HostOrPath, TraceType Type)
+TraceStart(std::string_view ProgramName, const char* HostOrPath, TraceType Type)
{
- TraceInit();
+ TraceInit(ProgramName);
switch (Type)
{
case TraceType::Network:
diff --git a/src/zenserver/admin/admin.cpp b/src/zenserver/admin/admin.cpp
index a0c90c9a0..c2df847ad 100644
--- a/src/zenserver/admin/admin.cpp
+++ b/src/zenserver/admin/admin.cpp
@@ -482,7 +482,7 @@ HttpAdminService::HttpAdminService(GcScheduler& Scheduler,
HttpContentType::kText,
"Tracing is already enabled"sv);
}
- TraceStart(HostOrPath.c_str(), Type);
+ TraceStart("zenserver", HostOrPath.c_str(), Type);
return Req.ServerRequest().WriteResponse(HttpResponseCode::OK, HttpContentType::kText, "Tracing started");
},
HttpVerb::kPost);
diff --git a/src/zenserver/main.cpp b/src/zenserver/main.cpp
index 868b5131c..be2cdcc2d 100644
--- a/src/zenserver/main.cpp
+++ b/src/zenserver/main.cpp
@@ -373,15 +373,15 @@ main(int argc, char* argv[])
#if ZEN_WITH_TRACE
if (ServerOptions.TraceHost.size())
{
- TraceStart(ServerOptions.TraceHost.c_str(), TraceType::Network);
+ TraceStart("zenserver", ServerOptions.TraceHost.c_str(), TraceType::Network);
}
else if (ServerOptions.TraceFile.size())
{
- TraceStart(ServerOptions.TraceFile.c_str(), TraceType::File);
+ TraceStart("zenserver", ServerOptions.TraceFile.c_str(), TraceType::File);
}
else
{
- TraceInit();
+ TraceInit("zenserver");
}
atexit(TraceShutdown);
#endif // ZEN_WITH_TRACE