diff --git a/MareSynchronosServer/MareSynchronosShared/Metrics/MetricsAPI.cs b/MareSynchronosServer/MareSynchronosShared/Metrics/MetricsAPI.cs index 8d5c2fb..7c41bbc 100644 --- a/MareSynchronosServer/MareSynchronosShared/Metrics/MetricsAPI.cs +++ b/MareSynchronosServer/MareSynchronosShared/Metrics/MetricsAPI.cs @@ -27,6 +27,9 @@ public class MetricsAPI public const string GaugeFilesUniquePastDay = "mare_files_unique_past_day"; public const string GaugeFilesUniquePastDaySize = "mare_files_unique_past_day_size"; public const string GaugeCurrentDownloads = "mare_current_downloads"; + public const string GaugeQueueFree = "mare_download_queue_free"; + public const string GaugeQueueActive = "mare_download_queue_active"; + public const string GaugeQueueInactive = "mare_download_queue_inactive"; public const string GaugeDownloadQueue = "mare_download_queue"; public const string CounterFileRequests = "mare_files_requests"; public const string CounterFileRequestSize = "mare_files_request_size"; diff --git a/MareSynchronosServer/MareSynchronosStaticFilesServer/Services/RequestQueueService.cs b/MareSynchronosServer/MareSynchronosStaticFilesServer/Services/RequestQueueService.cs index 5330fb3..2be2bde 100644 --- a/MareSynchronosServer/MareSynchronosStaticFilesServer/Services/RequestQueueService.cs +++ b/MareSynchronosServer/MareSynchronosStaticFilesServer/Services/RequestQueueService.cs @@ -193,6 +193,9 @@ public class RequestQueueService : IHostedService _queueProcessingSemaphore.Release(); } + _metrics.SetGaugeTo(MetricsAPI.GaugeQueueFree, _userQueueRequests.Count(c => c == null)); + _metrics.SetGaugeTo(MetricsAPI.GaugeQueueActive, _userQueueRequests.Count(c => c != null && c.IsActive)); + _metrics.SetGaugeTo(MetricsAPI.GaugeQueueInactive, _userQueueRequests.Count(c => c != null && !c.IsActive)); _metrics.SetGaugeTo(MetricsAPI.GaugeDownloadQueue, _queue.Count); } } \ No newline at end of file diff --git a/MareSynchronosServer/MareSynchronosStaticFilesServer/Startup.cs b/MareSynchronosServer/MareSynchronosStaticFilesServer/Startup.cs index cfdd624..9df174c 100644 --- a/MareSynchronosServer/MareSynchronosStaticFilesServer/Startup.cs +++ b/MareSynchronosServer/MareSynchronosStaticFilesServer/Startup.cs @@ -65,6 +65,9 @@ public class Startup MetricsAPI.GaugeFilesUniquePastHourSize, MetricsAPI.GaugeCurrentDownloads, MetricsAPI.GaugeDownloadQueue, + MetricsAPI.GaugeQueueFree, + MetricsAPI.GaugeQueueInactive, + MetricsAPI.GaugeQueueActive, })); services.AddSingleton(); services.AddSingleton();