From 017e078113f836a0d6884b01de3a1a9a03be49c1 Mon Sep 17 00:00:00 2001 From: Nicholas Blumhardt Date: Mon, 29 Apr 2024 10:36:19 +1000 Subject: [PATCH] Rename ServerMetricsEntity to ServerMetricsPart (no meaningful entity-like behavior); add indexing/write time metrics; add ExpressionIndexesResourceGroup.FindAsync() --- ...erMetricsEntity.cs => ServerMetricsPart.cs} | 18 ++++++++++++++---- src/Seq.Api/Model/Indexes/IndexEntity.cs | 2 +- .../ResourceGroups/DiagnosticsResourceGroup.cs | 4 ++-- .../ExpressionIndexesResourceGroup.cs | 1 - 4 files changed, 17 insertions(+), 8 deletions(-) rename src/Seq.Api/Model/Diagnostics/{ServerMetricsEntity.cs => ServerMetricsPart.cs} (80%) diff --git a/src/Seq.Api/Model/Diagnostics/ServerMetricsEntity.cs b/src/Seq.Api/Model/Diagnostics/ServerMetricsPart.cs similarity index 80% rename from src/Seq.Api/Model/Diagnostics/ServerMetricsEntity.cs rename to src/Seq.Api/Model/Diagnostics/ServerMetricsPart.cs index 9342d2c..9b75681 100644 --- a/src/Seq.Api/Model/Diagnostics/ServerMetricsEntity.cs +++ b/src/Seq.Api/Model/Diagnostics/ServerMetricsPart.cs @@ -13,19 +13,19 @@ // limitations under the License. using System; -using System.Collections.Generic; namespace Seq.Api.Model.Diagnostics { /// /// Metrics describing the state and performance of the Seq server. /// - public class ServerMetricsEntity : Entity + /// This information is not preserved across server restarts or fail-over. + public class ServerMetricsPart { /// - /// Construct a . + /// Construct a . /// - public ServerMetricsEntity() + public ServerMetricsPart() { } @@ -34,6 +34,16 @@ public ServerMetricsEntity() /// public long? EventStoreDiskRemainingBytes { get; set; } + /// + /// The total time spent indexing the event store in the last 24 hours. + /// + public TimeSpan EventStoreIndexingTimeLastDay { get; set; } + + /// + /// The total time spent writing events to disk in the last minute. + /// + public TimeSpan EventStoreWriteTimeLastMinute { get; set; } + /// /// The number of events that arrived at the ingestion endpoint in the past minute. /// diff --git a/src/Seq.Api/Model/Indexes/IndexEntity.cs b/src/Seq.Api/Model/Indexes/IndexEntity.cs index c2ea190..6b92295 100644 --- a/src/Seq.Api/Model/Indexes/IndexEntity.cs +++ b/src/Seq.Api/Model/Indexes/IndexEntity.cs @@ -1,4 +1,4 @@ - namespace Seq.Api.Model.Indexes +namespace Seq.Api.Model.Indexes { /// /// An index over the event stream. May be one of several types discriminated by . diff --git a/src/Seq.Api/ResourceGroups/DiagnosticsResourceGroup.cs b/src/Seq.Api/ResourceGroups/DiagnosticsResourceGroup.cs index d1616b9..5ba40d8 100644 --- a/src/Seq.Api/ResourceGroups/DiagnosticsResourceGroup.cs +++ b/src/Seq.Api/ResourceGroups/DiagnosticsResourceGroup.cs @@ -38,9 +38,9 @@ internal DiagnosticsResourceGroup(ILoadResourceGroup connection) /// /// A allowing the operation to be canceled. /// Current server metrics. - public async Task GetServerMetricsAsync(CancellationToken cancellationToken = default) + public async Task GetServerMetricsAsync(CancellationToken cancellationToken = default) { - return await GroupGetAsync("ServerMetrics", cancellationToken: cancellationToken).ConfigureAwait(false); + return await GroupGetAsync("ServerMetrics", cancellationToken: cancellationToken).ConfigureAwait(false); } /// diff --git a/src/Seq.Api/ResourceGroups/ExpressionIndexesResourceGroup.cs b/src/Seq.Api/ResourceGroups/ExpressionIndexesResourceGroup.cs index fb4c550..b804093 100644 --- a/src/Seq.Api/ResourceGroups/ExpressionIndexesResourceGroup.cs +++ b/src/Seq.Api/ResourceGroups/ExpressionIndexesResourceGroup.cs @@ -3,7 +3,6 @@ using System.Threading; using System.Threading.Tasks; using Seq.Api.Model; -using Seq.Api.Model.Indexes; using Seq.Api.Model.Indexing; namespace Seq.Api.ResourceGroups