无法将 Sentry 添加到 .NET 6 中的 ASP.NET Core Web API 项目

问题描述 投票:0回答:1

我正在尝试使用 .NET 6 将 Sentry 添加到我的 ASP.NET Core Web API 项目中。但是,我遇到了一个问题,即我在

AddSentry
中找不到
IServiceCollection
方法,即使我已经安装了
Sentry.AspNetCore 
包装。

我已经按照 Sentry 文档中的说明将

SentryAspNetCore
包添加到我的项目中。我还在我的 Program.cs 文件中添加了以下行:

builder.Services.AddSentry();

但是,在构建我的项目时出现以下错误:

“IServiceCollection”不包含“AddSentry”的定义,最佳扩展方法重载“LoggingBuilderExtensions.AddSentry(ILoggingBuilder, string)”需要类型为“ILoggingBuilder”的接收器

好像

AddSentry
没有被识别为
IServiceCollection
的扩展方法。我已经搜索了类似的问题并找到了一些添加
Sentry.Extensions.Logging
包的建议,但这没有帮助。

谁能帮我弄清楚我做错了什么以及如何将 Sentry 添加到我的 ASP.NET Core 6 Web API 项目中?提前谢谢你!

c# .net asp.net-core .net-6.0 sentry
1个回答
2
投票

不仅要获取日志记录,还要获取中间件和错误页面,请使用 WebHostBuilder 上的

UseSentry
扩展方法

var builder = WebApplication.CreateBuilder(args);

// Call UseSentry on the web host.
builder.WebHost.UseSentry();

var app = builder.Build();
app.UseRouting();


// You'll also likely want this, to capture transactions.
// This must be *after* UseRouting.
app.UseSentryTracing();

文档:https://docs.sentry.io/platforms/dotnet/guides/aspnetcore/

© www.soinside.com 2019 - 2024. All rights reserved.