gpt4 book ai didi

logging - Serilog 读取配置

转载 作者:行者123 更新时间:2023-12-02 16:46:48 30 4
gpt4 key购买 nike

我正在尝试使用 Serilog.Settings.Configuration 预发布 NuGet 包从 appsettings.json 加载我的 Serilog 配置。但是,当我使用 Configuration.GetSection 加载它时,该值继续返回为 null。

这是我的 Program.cs 文件中的内容:

    return WebHost.CreateDefaultBuilder(args)
.UseStartup<Startup>()
.ConfigureLogging(
(hostingContext, loggingBuilder) =>
{
loggingBuilder.ClearProviders();
loggingBuilder.AddSerilog(
new LoggerConfiguration()
.ReadFrom.ConfigurationSection(hostingContext.Configuration.GetSection("Serilog"))
.CreateLogger()
);
}
);

这是我的 appsettings.json 文件中的内容:

    {
"Serilog": {
"Using": [ "Serilog.Sinks.MSSqlServer" ],
"MinimumLevel": {
"Default": "Verbose",
"Override": {
"Microsoft": "Verbose",
"System": "Verbose",
"Microsoft.AspNetCore.Authentication": "Verbose"
}
},
"WriteTo": [
{
"Name": "MSSqlServer",
"Args": {
"connectionString": "*my_connectionString*",
"tableName": "ErrorLog"
}
}
]
}}

已安装 NuGet 软件包:

  • Microsoft.AspNetCore.App v2.1.1
  • Serilog v2.7.1
  • Serilog.AspNetCore v2.1.1
  • Serilog.Extensions.Logging v2.0.2
  • Serilog.Settings.Configuration v3.0.0-dev-00119
  • Serilog.Sinks.MSSqlServer v5.1.2

最佳答案

我这样配置:

return WebHost.CreateDefaultBuilder(args)
.UseStartup<Startup>()
.UseSerilog((hostingContext, loggerConfiguration) => loggerConfiguration
.ReadFrom.Configuration(hostingContext.Configuration))
.Build();

默认情况下Serilog在配置中查找Serilog部分

关于logging - Serilog 读取配置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52116114/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com