:arrow_heavy_plus: Add OpenTelemetry
This commit is contained in:
@ -29,6 +29,8 @@ using Microsoft.Extensions.Options;
|
||||
using Microsoft.OpenApi.Models;
|
||||
using NodaTime;
|
||||
using NodaTime.Serialization.SystemTextJson;
|
||||
using OpenTelemetry.Metrics;
|
||||
using OpenTelemetry.Trace;
|
||||
using Prometheus;
|
||||
using Prometheus.DotNetRuntime;
|
||||
using Prometheus.SystemMetrics;
|
||||
@ -51,6 +53,7 @@ builder.WebHost.ConfigureKestrel(options =>
|
||||
|
||||
// Configure metrics
|
||||
|
||||
// Prometheus
|
||||
builder.Services.UseHttpClientMetrics();
|
||||
builder.Services.AddHealthChecks();
|
||||
builder.Services.AddSystemMetrics();
|
||||
@ -58,6 +61,24 @@ builder.Services.AddPrometheusEntityFrameworkMetrics();
|
||||
builder.Services.AddPrometheusAspNetCoreMetrics();
|
||||
builder.Services.AddPrometheusHttpClientMetrics();
|
||||
|
||||
// OpenTelemetry
|
||||
builder.Services.AddOpenTelemetry()
|
||||
.WithTracing(tracing =>
|
||||
{
|
||||
tracing
|
||||
.AddAspNetCoreInstrumentation()
|
||||
.AddHttpClientInstrumentation()
|
||||
.AddOtlpExporter();
|
||||
})
|
||||
.WithMetrics(metrics =>
|
||||
{
|
||||
metrics
|
||||
.AddAspNetCoreInstrumentation()
|
||||
.AddHttpClientInstrumentation()
|
||||
.AddRuntimeInstrumentation()
|
||||
.AddOtlpExporter();
|
||||
});
|
||||
|
||||
// Add services to the container.
|
||||
|
||||
builder.Services.AddLocalization(options => options.ResourcesPath = "Resources");
|
||||
|
Reference in New Issue
Block a user