23 lines
705 B
C#
23 lines
705 B
C#
using System;
|
|
using System.Threading;
|
|
|
|
namespace StellaOps.Provcache;
|
|
|
|
public sealed partial class WriteBehindQueue
|
|
{
|
|
/// <inheritdoc />
|
|
public WriteBehindMetrics GetMetrics()
|
|
{
|
|
return new WriteBehindMetrics
|
|
{
|
|
TotalEnqueued = Interlocked.Read(ref _totalEnqueued),
|
|
TotalPersisted = Interlocked.Read(ref _totalPersisted),
|
|
TotalFailed = Interlocked.Read(ref _totalFailed),
|
|
TotalRetries = Interlocked.Read(ref _totalRetries),
|
|
TotalBatches = Interlocked.Read(ref _totalBatches),
|
|
CurrentQueueDepth = Interlocked.Read(ref _currentQueueDepth),
|
|
Timestamp = _timeProvider.GetUtcNow()
|
|
};
|
|
}
|
|
}
|