小编bir*_*men的帖子

使用 Microsoft 的 ILogger 时,如何将范围包含在 Serilog 的控制台接收器中?

根据Nicholas Blumhardt这篇博客文章中的详细信息(我知道,它已经有几年了,但我似乎找不到任何更新的内容),我希望能够使用以下(最小)配置和范围自动添加到我的日志事件中,但是,我没有从默认控制台提供程序获得任何内容。理想情况下,这只是key=value日志行上的 a,但 json blob{"key":"value"}也可以工作。

ASP.NET Core 版本:3.1
Serilog 版本:2.10.0
Serilog.AspNetCore 版本:3.4.0

程序.cs

public class Program
{
    public static int Main(string[] args)
    {
        Log.Logger = new LoggerConfiguration()
            .MinimumLevel.Override("Microsoft", LogEventLevel.Information)
            .WriteTo.Console()
            .CreateLogger();

        try
        {
            Log.Information("Starting web host");
            CreateHostBuilder(args).Build().Run();
            return 0;
        }
        catch (Exception ex)
        {
            Log.Fatal(ex, "Host terminated unexpectedly");
            return 1;
        }
        finally
        {
            Log.CloseAndFlush();
        }
    }

    public static IHostBuilder CreateHostBuilder(string[] args) =>
        Host.CreateDefaultBuilder(args)
            .UseSerilog()
            .ConfigureWebHostDefaults(webBuilder =>
            {
                webBuilder.UseStartup<Startup>();
            });
}
Run Code Online (Sandbox Code Playgroud)

启动.cs

public class Startup …
Run Code Online (Sandbox Code Playgroud)

c# serilog asp.net-core

5
推荐指数
1
解决办法
4898
查看次数

标签 统计

asp.net-core ×1

c# ×1

serilog ×1