| File: Metric.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; using Microsoft.Extensions.Diagnostics.Metrics; namespace Microsoft.Extensions.Diagnostics.HealthChecks; internal static partial class Metric { [Counter( "dotnet.health_check.status", Name = "dotnet.health_check.reports", Unit = "{report}", Description = "Number of times a health report reported the health status of an application.")] public static partial HealthCheckReportCounter CreateHealthCheckReportCounter(Meter meter); [Counter( "dotnet.health_check.name", "dotnet.health_check.status", Name = "dotnet.health_check.unhealthy_checks", Unit = "{unhealthy_check}", Description = "Number of times a health check reported the health status of an application as Degraded or Unhealthy.")] public static partial UnhealthyHealthCheckCounter CreateUnhealthyHealthCheckCounter(Meter meter); public static void RecordMetric(this HealthCheckReportCounter counterMetric, HealthStatus status) => counterMetric.Add(1, status.ToString()); public static void RecordMetric(this UnhealthyHealthCheckCounter counterMetric, string name, HealthStatus status) => counterMetric.Add(1, name, status.ToString()); }