0

我有一个现有的 asp.net Web api 项目。该项目使用 Serilog 进行日志记录。使用 OwinStartup 它正在像这样配置 Serilog

var logger = new LoggerConfiguration()
            .ReadFrom.AppSettings()
            .CreateLogger();

        logger.Information("Api Startup");

AppSettings 有很多设置。

实例也是这样注册的

        builder.RegisterInstance(logger).As<ILogger>().SingleInstance().PropertiesAutowired();

我有一种方法可以用 app Insights 替换这个 serilog 实现,或者以某种方式将它一起使用,这样所有日志都进入 app Insights 中,而不是现在配置的文件系统中。

4

1 回答 1

0

只需使用该包Serilog.Sinks.ApplicationInsights并将 AppInsights 添加为 Serilog 的接收器

var log = new LoggerConfiguration()
    .WriteTo
    .ApplicationInsights(TelemetryConfiguration.Active, TelemetryConverter.Traces)
    .CreateLogger();

https://github.com/serilog/serilog-sinks-applicationinsights

于 2021-02-06T10:13:02.930 回答