将serilog与Azure应用程序见解和.Net核心一起使用

问题描述 投票:-1回答:1

当前,我正在直接使用azure应用程序见解进行日志记录,如该链接中所述Use latest version of Application Insight with .net core API并且一切正常。

但是我需要借助azure应用程序洞察力现在使用serilog进行日志记录。甚至我也进行了有关serilog(https://github.com/serilog/serilog-sinks-applicationinsights)的研发。但是没有任何想法。您能否建议我,如何使用.Net core 3.0来实现?

c# azure asp.net-core azure-application-insights serilog
1个回答
0
投票

请按照以下步骤操作:

首先,停顿以下软件包:

Microsoft.ApplicationInsights.AspNetCore, version 2.14.0

Serilog.AspNetCore, version 3.2.0

Serilog.Sinks.ApplicationInsights, version 3.1.0

Serilog.Settings.Configuration, version 3.1.0

在Program.cs中:

public class Program
{     
    public static void Main(string[] args)
    {
        CreateHostBuilder(args).Build().Run();
    }

    public static IHostBuilder CreateHostBuilder(string[] args) =>
        Host.CreateDefaultBuilder(args)
            .ConfigureWebHostDefaults(webBuilder =>
            {
                webBuilder.UseStartup<Startup>();
            })
           .UseSerilog((hostingContext, loggerConfiguration) => loggerConfiguration
                    .ReadFrom.Configuration(hostingContext.Configuration)
                    .WriteTo.ApplicationInsights(new TelemetryConfiguration{ InstrumentationKey = "xxxxxxxxx" },TelemetryConverter.Traces)
             );                
}

在controller.cs中>:

enter image description here

测试结果

enter image description here

© www.soinside.com 2019 - 2024. All rights reserved.