C#调试和跟踪日志未被捕获



我有一个简单的.NET6控制台应用程序来测试日志配置。我没有使用appsettings.json,只是构建了如下所示的记录器。

我将滤波器设置为"0";Trace";,但我只得到"信息"、"错误"one_answers"关键"。不确定我做错了什么。感谢您的帮助。

using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.Logging;
ILogger? logger;
ConfigureServices();
logger?.LogInformation("Information");
logger?.LogDebug("Debug");
logger?.LogTrace("Trace");
logger?.LogError("Error");
logger?.LogCritical("Critical");
await Task.Delay(1000);
void ConfigureServices()
{
string sourceName = "LoggerTest";
var loggerFactory = LoggerFactory.Create(builder =>
{
builder
.ClearProviders()
.AddFilter(sourceName, LogLevel.Trace)
.AddConsole();
});
logger = loggerFactory.CreateLogger<Program>();
logger.BeginScope(sourceName);
}

我的输出:

info: Program[0]
Information
fail: Program[0]
Error
crit: Program[0]
Critical

好吧,我想好了。有一个";SetMinimumLevel(("功能:

var loggerFactory = LoggerFactory.Create(builder =>
{
builder
.ClearProviders()
.AddFilter(sourceName, LogLevel.Trace)
.AddConsole()
.SetMinimumLevel(LogLevel.Trace);
});

最新更新