Add Sentry integration and update OpenTelemetry packages

This commit is contained in:
2025-06-21 12:06:14 +01:00
parent f301e6b137
commit 06aaab666f
3 changed files with 67 additions and 42 deletions

View File

@@ -22,6 +22,11 @@
<PackageReference Include="OpenTelemetry.Extensions.Hosting"/>
<PackageReference Include="OpenTelemetry.Instrumentation.AspNetCore"/>
<PackageReference Include="OpenTelemetry.Instrumentation.Http"/>
<PackageReference Include="Sentry"/>
<PackageReference Include="Sentry.AspNetCore"/>
<PackageReference Include="Sentry.Extensions.Logging"/>
<PackageReference Include="Sentry.OpenTelemetry"/>
<PackageReference Include="Sentry.Serilog"/>
<PackageReference Include="Serilog"/>
<PackageReference Include="Serilog.Extensions.Logging"/>
<PackageReference Include="Serilog.Sinks.Console"/>

View File

@@ -9,6 +9,7 @@ using Microsoft.AspNetCore.Identity;
using Microsoft.EntityFrameworkCore;
using OpenTelemetry.Metrics;
using OpenTelemetry.Trace;
using Sentry.OpenTelemetry;
using Serilog;
using Serilog.Events;
using DbContext = Aaru.Server.Database.DbContext;
@@ -79,14 +80,28 @@ builder.Logging.AddSerilog(new LoggerConfiguration().WriteTo
restrictedToMinimumLevel: LogEventLevel.Information)
.CreateLogger());
builder.Logging.AddSerilog(new LoggerConfiguration().WriteTo
.Sentry("https://0bdaf61514c94d74c3c8c7d1cbba999f@sentry.claunia.com/2",
LogEventLevel.Debug,
LogEventLevel.Warning)
.CreateLogger());
builder.Services.AddOpenTelemetry()
.WithTracing(tracerProviderBuilder => tracerProviderBuilder
.AddAspNetCoreInstrumentation() // <-- Adds ASP.NET Core telemetry sources
.AddHttpClientInstrumentation() // <-- Adds HttpClient telemetry sources
.AddSentry() // <-- Configure OpenTelemetry to send trace information to Sentry
)
.WithMetrics(metricsProviderBuilder =>
metricsProviderBuilder.AddAspNetCoreInstrumentation().AddHttpClientInstrumentation());
builder.WebHost.UseSentry(o =>
{
o.Dsn = "https://0bdaf61514c94d74c3c8c7d1cbba999f@sentry.claunia.com/2";
o.UseOpenTelemetry();
o.TracesSampleRate = 1.0;
});
// Add services to the container.
builder.Services.AddRazorComponents().AddInteractiveServerComponents();

View File

@@ -31,6 +31,11 @@
<PackageVersion Include="Roslynator.Analyzers" Version="4.13.1"/>
<PackageVersion Include="Roslynator.CodeAnalysis.Analyzers" Version="4.13.1"/>
<PackageVersion Include="Roslynator.Formatting.Analyzers" Version="4.13.1"/>
<PackageVersion Include="Sentry" Version="5.11.0"/>
<PackageVersion Include="Sentry.AspNetCore" Version="5.11.0"/>
<PackageVersion Include="Sentry.Extensions.Logging" Version="5.11.0"/>
<PackageVersion Include="Sentry.OpenTelemetry" Version="5.11.0"/>
<PackageVersion Include="Sentry.Serilog" Version="5.11.0"/>
<PackageVersion Include="Serilog" Version="4.3.0"/>
<PackageVersion Include="Serilog.Extensions.Logging" Version="9.0.2"/>
<PackageVersion Include="Serilog.Sinks.Console" Version="6.0.0"/>