aboutsummaryrefslogtreecommitdiff
path: root/src/zenserver/admin/admin.cpp
diff options
context:
space:
mode:
authorDan Engelbrecht <[email protected]>2023-09-20 17:22:49 -0400
committerGitHub <[email protected]>2023-09-20 23:22:49 +0200
commit73b86bbbd15e22893f05261dee036b81bfff91cf (patch)
tree45c36ed9f8c7e340bd1ba292ec11cab5186b6965 /src/zenserver/admin/admin.cpp
parentcontrolled zenserver shutdown (#413) (diff)
downloadzen-73b86bbbd15e22893f05261dee036b81bfff91cf.tar.xz
zen-73b86bbbd15e22893f05261dee036b81bfff91cf.zip
Improvement: Add names to background jobs for easier debugging (#412)
Improvement: Background jobs now temporarily sets thread name to background job name while executing Improvement: Background jobs tracks worker thread id used while executing
Diffstat (limited to 'src/zenserver/admin/admin.cpp')
-rw-r--r--src/zenserver/admin/admin.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/zenserver/admin/admin.cpp b/src/zenserver/admin/admin.cpp
index 74131e624..cef2ba403 100644
--- a/src/zenserver/admin/admin.cpp
+++ b/src/zenserver/admin/admin.cpp
@@ -99,24 +99,29 @@ HttpAdminService::HttpAdminService(GcScheduler& Scheduler, JobQueue& BackgroundJ
case JobQueue::Status::Queued:
{
CbObjectWriter Obj;
+ Obj.AddString("Name"sv, CurrentState->Name);
Obj.AddString("Status"sv, "Queued"sv);
Obj.AddFloat("QueueTimeS", GetAgeAsSeconds(CurrentState->CreateTime, Now));
+ Obj.AddInteger("WorkerThread", CurrentState->WorkerThreadId);
Req.ServerRequest().WriteResponse(HttpResponseCode::OK, Obj.Save());
}
break;
case JobQueue::Status::Running:
{
CbObjectWriter Obj;
+ Obj.AddString("Name"sv, CurrentState->Name);
Obj.AddString("Status"sv, "Running"sv);
WriteState(Obj, CurrentState->State);
Obj.AddFloat("QueueTimeS", GetAgeAsSeconds(CurrentState->CreateTime, CurrentState->StartTime));
Obj.AddFloat("RunTimeS", GetAgeAsSeconds(CurrentState->StartTime, Now));
+ Obj.AddInteger("WorkerThread", CurrentState->WorkerThreadId);
Req.ServerRequest().WriteResponse(HttpResponseCode::OK, Obj.Save());
}
break;
case JobQueue::Status::Aborted:
{
CbObjectWriter Obj;
+ Obj.AddString("Name"sv, CurrentState->Name);
Obj.AddString("Status"sv, "Aborted"sv);
WriteState(Obj, CurrentState->State);
Obj.AddFloat("QueueTimeS", GetAgeAsSeconds(CurrentState->CreateTime, CurrentState->StartTime));
@@ -128,6 +133,7 @@ HttpAdminService::HttpAdminService(GcScheduler& Scheduler, JobQueue& BackgroundJ
case JobQueue::Status::Completed:
{
CbObjectWriter Obj;
+ Obj.AddString("Name"sv, CurrentState->Name);
Obj.AddString("Status"sv, "Complete"sv);
WriteState(Obj, CurrentState->State);
Obj.AddFloat("QueueTimeS", GetAgeAsSeconds(CurrentState->CreateTime, CurrentState->StartTime));