in Microsoft.Azure.WebJobs.Extensions.AzureCosmosDb.Mongo/Trigger/CosmosDBMongoMetricsStore.cs [85:105]
private static void TakeMetricsSnapshot()
{
foreach (var kvp in _currentMetrics)
{
var queue = _metricsHistory.GetOrAdd(kvp.Key, _ => new Queue<CosmosDBMongoTriggerMetrics>());
var snapshot = new CosmosDBMongoTriggerMetrics
{
PendingEventsCount = kvp.Value.PendingEventsCount,
Timestamp = DateTime.UtcNow
};
lock (queue)
{
queue.Enqueue(snapshot);
while (queue.Count > MaxSampleCount)
{
queue.Dequeue();
}
}
}
}