diff OrthancServer/ServerContext.cpp @ 3174:8ea7c4546c3a

primitives to collect metrics in Orthanc
author Sebastien Jodogne <s.jodogne@gmail.com>
date Tue, 29 Jan 2019 15:15:48 +0100
parents 1fe524e211af
children 574890d14c92
line wrap: on
line diff
--- a/OrthancServer/ServerContext.cpp	Tue Jan 29 10:34:00 2019 +0100
+++ b/OrthancServer/ServerContext.cpp	Tue Jan 29 15:15:48 2019 +0100
@@ -41,6 +41,7 @@
 #include "../Core/HttpServer/HttpStreamTranscoder.h"
 #include "../Core/JobsEngine/SetOfInstancesJob.h"
 #include "../Core/Logging.h"
+#include "../Core/MetricsRegistry.h"
 #include "../Plugins/Engine/OrthancPlugins.h"
 
 #include "OrthancConfiguration.h"
@@ -237,7 +238,8 @@
 #endif
     done_(false),
     haveJobsChanged_(false),
-    isJobsEngineUnserialized_(false)
+    isJobsEngineUnserialized_(false),
+    metricsRegistry_(new MetricsRegistry)
   {
     {
       OrthancConfiguration::ReaderLock lock;
@@ -249,6 +251,7 @@
       defaultLocalAet_ = lock.GetConfiguration().GetStringParameter("DicomAet", "ORTHANC");
       jobsEngine_.SetWorkersCount(lock.GetConfiguration().GetUnsignedIntegerParameter("ConcurrentJobs", 2));
       saveJobs_ = lock.GetConfiguration().GetBooleanParameter("SaveJobs", true);
+      metricsRegistry_->SetEnabled(lock.GetConfiguration().GetBooleanParameter("MetricsEnabled", true));
     }
 
     jobsEngine_.SetThreadSleep(unitTesting ? 20 : 200);