| File: HealthCheckMetrics.cs | Web Access |
| Project: src\src\Libraries\Microsoft.Extensions.Diagnostics.HealthChecks.Common\Microsoft.Extensions.Diagnostics.HealthChecks.Common.csproj (Microsoft.Extensions.Diagnostics.HealthChecks.Common) |
// Licensed to the .NET Foundation under one or more agreements. // The .NET Foundation licenses this file to you under the MIT license. using System.Diagnostics.Metrics; namespace Microsoft.Extensions.Diagnostics.HealthChecks; internal sealed class HealthCheckMetrics { public HealthCheckMetrics(IMeterFactory meterFactory) { #pragma warning disable CA2000 // Dispose objects before losing scope // We don't dispose the meter because IMeterFactory handles that // An issue on analyzer side: https://github.com/dotnet/roslyn-analyzers/issues/6912 // Related documentation: https://github.com/dotnet/docs/pull/37170 var meter = meterFactory.Create("Microsoft.Extensions.Diagnostics.HealthChecks"); #pragma warning restore CA2000 // Dispose objects before losing scope HealthCheckReportCounter = Metric.CreateHealthCheckReportCounter(meter); UnhealthyHealthCheckCounter = Metric.CreateUnhealthyHealthCheckCounter(meter); } public HealthCheckReportCounter HealthCheckReportCounter { get; } public UnhealthyHealthCheckCounter UnhealthyHealthCheckCounter { get; } }