使用Web API 2.0中的ELMAH功能和集中式日志记录与错误处理,运行时调用日志记录模块并决定是否可以处理,然后调用处理程序,否则仅记录它。如何在Web API Core中添加此功能,因为我们没有内置的集中式未处理日志记录功能。
我找到的一种方法是使用ExceptionHandler中间件,当它被调用时,获取异常并记录或发送电子邮件。但是如果处理程序没有被调用,如何记录这些未处理的异常?
使用Web API 2.0中的ELMAH功能和集中式日志记录与错误处理,运行时调用日志记录模块并决定是否可以处理,然后调用处理程序,否则仅记录它。如何在Web API Core中添加此功能,因为我们没有内置的集中式未处理日志记录功能。
我找到的一种方法是使用ExceptionHandler中间件,当它被调用时,获取异常并记录或发送电子邮件。但是如果处理程序没有被调用,如何记录这些未处理的异常?
中间件可能是一种不错的选择。我在这里写了一个指南:ASP.NET Core 中的错误日志记录中间件。
我可能会结合使用 Microsoft.Extensions.Logging 和像 Serilog、NLog 或 log4net 这样的日志框架。
如果您已经在使用Application Insights,您可以在门户中设置警报。 https://learn.microsoft.com/en-us/azure/azure-monitor/learn/tutorial-alert
尝试使用 Elmah 到 .NET Core 的 此端口。
services.AddElmah(); // in ConfigureServices
app.UseElmah(); // in Configure, before UseMvc()
HttpContext.RiseError()
记录异常到Elmahcore?还是一旦配置就可以自动捕获代码中抛出的异常? - Hamza Khanzada