| File: NpgsqlCommon.cs | Web Access |
| Project: src\src\Components\Aspire.Npgsql\Aspire.Npgsql.csproj (Aspire.Npgsql) |
// Licensed to the .NET Foundation under one or more agreements. // The .NET Foundation licenses this file to you under the MIT license. using OpenTelemetry.Metrics; internal static class NpgsqlCommon { public static void AddNpgsqlMetrics(MeterProviderBuilder meterProviderBuilder) { double[] secondsBuckets = [0, 0.005, 0.01, 0.025, 0.05, 0.075, 0.1, 0.25, 0.5, 0.75, 1, 2.5, 5, 7.5, 10]; // https://github.com/npgsql/npgsql/blob/4c9921de2dfb48fb5a488787fc7422add3553f50/src/Npgsql/MetricsReporter.cs#L48 meterProviderBuilder .AddMeter("Npgsql") // Npgsql's histograms are in seconds, not milliseconds. .AddView("db.client.commands.duration", new ExplicitBucketHistogramConfiguration { Boundaries = secondsBuckets }) .AddView("db.client.connections.create_time", new ExplicitBucketHistogramConfiguration { Boundaries = secondsBuckets }); } }