mirror of
https://github.com/aaru-dps/Aaru.Server.git
synced 2025-12-16 19:24:27 +00:00
Add OpenTelemetry for tracing and metrics instrumentation
This commit is contained in:
@@ -18,6 +18,10 @@
|
|||||||
<PackageReference Include="Microsoft.EntityFrameworkCore.Sqlite"/>
|
<PackageReference Include="Microsoft.EntityFrameworkCore.Sqlite"/>
|
||||||
<PackageReference Include="Microsoft.EntityFrameworkCore.Tools"/>
|
<PackageReference Include="Microsoft.EntityFrameworkCore.Tools"/>
|
||||||
<PackageReference Include="MimeKit"/>
|
<PackageReference Include="MimeKit"/>
|
||||||
|
<PackageReference Include="OpenTelemetry" />
|
||||||
|
<PackageReference Include="OpenTelemetry.Extensions.Hosting" />
|
||||||
|
<PackageReference Include="OpenTelemetry.Instrumentation.AspNetCore" />
|
||||||
|
<PackageReference Include="OpenTelemetry.Instrumentation.Http" />
|
||||||
<PackageReference Include="Serilog"/>
|
<PackageReference Include="Serilog"/>
|
||||||
<PackageReference Include="Serilog.Extensions.Logging"/>
|
<PackageReference Include="Serilog.Extensions.Logging"/>
|
||||||
<PackageReference Include="Serilog.Sinks.Console"/>
|
<PackageReference Include="Serilog.Sinks.Console"/>
|
||||||
|
|||||||
@@ -7,6 +7,8 @@ using Aaru.Server.Services;
|
|||||||
using Microsoft.AspNetCore.Components.Authorization;
|
using Microsoft.AspNetCore.Components.Authorization;
|
||||||
using Microsoft.AspNetCore.Identity;
|
using Microsoft.AspNetCore.Identity;
|
||||||
using Microsoft.EntityFrameworkCore;
|
using Microsoft.EntityFrameworkCore;
|
||||||
|
using OpenTelemetry.Metrics;
|
||||||
|
using OpenTelemetry.Trace;
|
||||||
using Serilog;
|
using Serilog;
|
||||||
using Serilog.Events;
|
using Serilog.Events;
|
||||||
using DbContext = Aaru.Server.Database.DbContext;
|
using DbContext = Aaru.Server.Database.DbContext;
|
||||||
@@ -77,6 +79,14 @@ builder.Logging.AddSerilog(new LoggerConfiguration().WriteTo
|
|||||||
restrictedToMinimumLevel: LogEventLevel.Information)
|
restrictedToMinimumLevel: LogEventLevel.Information)
|
||||||
.CreateLogger());
|
.CreateLogger());
|
||||||
|
|
||||||
|
builder.Services.AddOpenTelemetry()
|
||||||
|
.WithTracing(tracerProviderBuilder => tracerProviderBuilder
|
||||||
|
.AddAspNetCoreInstrumentation() // <-- Adds ASP.NET Core telemetry sources
|
||||||
|
.AddHttpClientInstrumentation() // <-- Adds HttpClient telemetry sources
|
||||||
|
)
|
||||||
|
.WithMetrics(metricsProviderBuilder =>
|
||||||
|
metricsProviderBuilder.AddAspNetCoreInstrumentation().AddHttpClientInstrumentation());
|
||||||
|
|
||||||
// Add services to the container.
|
// Add services to the container.
|
||||||
builder.Services.AddRazorComponents().AddInteractiveServerComponents();
|
builder.Services.AddRazorComponents().AddInteractiveServerComponents();
|
||||||
|
|
||||||
|
|||||||
@@ -21,6 +21,10 @@
|
|||||||
<PackageVersion Include="Microsoft.Extensions.Configuration" Version="9.0.6" />
|
<PackageVersion Include="Microsoft.Extensions.Configuration" Version="9.0.6" />
|
||||||
<PackageVersion Include="Microsoft.VisualStudio.Threading.Analyzers" Version="17.14.15" />
|
<PackageVersion Include="Microsoft.VisualStudio.Threading.Analyzers" Version="17.14.15" />
|
||||||
<PackageVersion Include="MimeKit" Version="4.12.0" />
|
<PackageVersion Include="MimeKit" Version="4.12.0" />
|
||||||
|
<PackageVersion Include="OpenTelemetry" Version="1.12.0" />
|
||||||
|
<PackageVersion Include="OpenTelemetry.Extensions.Hosting" Version="1.12.0" />
|
||||||
|
<PackageVersion Include="OpenTelemetry.Instrumentation.AspNetCore" Version="1.12.0" />
|
||||||
|
<PackageVersion Include="OpenTelemetry.Instrumentation.Http" Version="1.12.0" />
|
||||||
<PackageVersion Include="Philips.CodeAnalysis.MaintainabilityAnalyzers" Version="1.5.0" />
|
<PackageVersion Include="Philips.CodeAnalysis.MaintainabilityAnalyzers" Version="1.5.0" />
|
||||||
<PackageVersion Include="Pomelo.EntityFrameworkCore.MySql.Design" Version="1.1.2" />
|
<PackageVersion Include="Pomelo.EntityFrameworkCore.MySql.Design" Version="1.1.2" />
|
||||||
<PackageVersion Include="Pomelo.EntityFrameworkCore.MySql" Version="9.0.0-preview.3.efcore.9.0.0" />
|
<PackageVersion Include="Pomelo.EntityFrameworkCore.MySql" Version="9.0.0-preview.3.efcore.9.0.0" />
|
||||||
|
|||||||
Reference in New Issue
Block a user