我使用Kestrel和.NET Core 2来提供Web API应用程序。
我想隐藏在控制台窗口中显示的异常。
尝试内置的Log filtering机制。
您可以为特定提供商和类别或所有提供商或所有类别指定最低日志级别。低于最低级别的任何日志都不会传递给该提供程序,因此不会显示或存储它们。
它应该是这些日志的Microsoft.AspNetCore.Server.Kestrel
类别名称。可以通过AddFilter
的ILoggingBuilder
扩展方法在代码中注册过滤规则:
// using Microsoft.Extensions.Logging.Console;
WebHost.CreateDefaultBuilder(args)
.UseStartup<Startup>()
.ConfigureLogging(logging =>
...
logging.AddFilter<ConsoleLoggerProvider>(
"Microsoft.AspNetCore.Server.Kestrel",
LogLevel.Critical))
.Build();