/
aprogrammer
/
dotnet-docs
Обзор
Документация
Войти
/
aprogrammer
/
dotnet-docs
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
main
docs/core/diagnostics/snippets/EventCounters/ConditionalEventCounterSource.cs
39 строк
1 KB
David Pine
Introduce EventCounters overview article and tutorial doc (#19635)
07 авг 2020, 21:00
Не верифицирован
07 авг 2020, 21:00
e7e776f
Код
Авторство
О чём код?
using System.Diagnostics.Tracing; [EventSource(Name = "Sample.EventCounter.Conditional")] public sealed class ConditionalEventCounterSource : EventSource { public static readonly ConditionalEventCounterSource Log = new ConditionalEventCounterSource(); private EventCounter _requestCounter; private ConditionalEventCounterSource() { } protected override void OnEventCommand(EventCommandEventArgs args) { if (args.Command == EventCommand.Enable) { _requestCounter ??= new EventCounter("request-time", this) { DisplayName = "Request Processing Time", DisplayUnits = "ms" }; } } public void Request(string url, float elapsedMilliseconds) { if (IsEnabled()) { _requestCounter?.WriteMetric(elapsedMilliseconds); } } protected override void Dispose(bool disposing) { _requestCounter?.Dispose(); _requestCounter = null; base.Dispose(disposing); } }