我使用异常过滤器在我的 ASP.NET Core 应用程序中记录异常,如下所示:
public void OnException(ExceptionContext context)
{
var request = context.HttpContext.Request;
var resource = $"{request?.Method}: {request?.Path}{request?.QueryString}";
var logger = context.HttpContext.RequestServices.GetService<ILogger<ExceptionFilter>>();
logger.LogError(0, context.Exception, $"Error in SB.API - {resource}");
}
这很好用,但 Kestrel 也会记录这个事件,给我一个重复的条目。
当我像这样手动记录它时,如何防止此错误进一步传播?
我不想完全关闭它,因为那样我可能会错过管道其他部分发生的错误。