Serilog 没有加载配置?

Serilog not loading configuration?

我刚开始使用 Serilog。我开始了一个非常简单的配置,但我无法确认它是否已加载...也许我没有找到正确的地方?

应用设置(片段):

"Serilog": {
  "Using": [ "Serilog", "Serilog.Sinks.Console", "Serilog.Sinks.EventLog" ],
  "MinimumLevel": {
    "Default": "Debug"
}

program.cs

Host.CreateDefaultBuilder(args)
    .ConfigureAppConfiguration(
      (hostingContext, config) =>
         configureConfiguration(hostingContext, config))
    .UseSerilog(
       (hostingContext, config) =>
         configureSeriLog(hostingContext, config));

// local function
void configureSeriLog(HostBuilderContext cntxt, LoggerConfiguration builder)
{
  builder.ReadFrom
         .Configuration(cntxt.Configuration);
}

我在 ReadFrom.Configuration() 调用处设置了一个断点。调用后,我查看 builder 变量下的非 Public 成员 _minimumLevel 并显示 信息。我是在看错地方还是没有加载配置。百万感谢!

要诊断问题,您可以尝试使用 SelfLog

Serilog.Debugging.SelfLog.Enable(x => Debug.WriteLine(x));

Debugging and Diagnostics

When Serilog is not behaving as you expect, this may be caused by an internal exception or configuration issue. Here are a couple of ways to sort things out.

...