未捕获 C# 调试和跟踪日志
C# Debug and Trace Logs Not Being Captured
我有一个简单的 .NET6 控制台应用程序来测试日志记录配置。我没有使用 appsettings.json - 只是构建记录器,如下所示。
我将过滤器设置为“跟踪”,但我只得到信息、错误和关键。不知道我做错了什么。感谢帮助。
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);
});
我有一个简单的 .NET6 控制台应用程序来测试日志记录配置。我没有使用 appsettings.json - 只是构建记录器,如下所示。
我将过滤器设置为“跟踪”,但我只得到信息、错误和关键。不知道我做错了什么。感谢帮助。
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);
});