feat(telemetry): MapZbMetrics Prometheus scrape endpoint

This commit is contained in:
Joseph Doherty
2026-06-01 07:34:26 -04:00
parent 4126e1df54
commit 3e4d4369bf
2 changed files with 60 additions and 0 deletions
@@ -0,0 +1,22 @@
using Microsoft.AspNetCore.Builder;
using Microsoft.AspNetCore.Routing;
namespace ZB.MOM.WW.Telemetry;
/// <summary>
/// Endpoint extension for mounting the Prometheus <c>/metrics</c> scrape endpoint.
/// </summary>
public static class ZbMetricsEndpointExtensions
{
/// <summary>
/// Mounts the Prometheus <c>/metrics</c> endpoint. Only valid when
/// <see cref="ZbTelemetryOptions.Exporter"/> = <see cref="ZbExporter.Prometheus"/>.
/// Call after <c>app.UseRouting()</c>.
/// </summary>
/// <param name="endpoints">The endpoint route builder.</param>
public static IEndpointConventionBuilder MapZbMetrics(this IEndpointRouteBuilder endpoints)
{
ArgumentNullException.ThrowIfNull(endpoints);
return endpoints.MapPrometheusScrapingEndpoint();
}
}