как заменить существующую реализацию Serilog на Azure App Insights

У меня есть существующий проект веб-API asp.net. этот проект использует Serilog для регистрации. Используя OwinStartup, он настраивает Serilog следующим образом.

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

        logger.Information("Api Startup");

и AppSettings имеет кучу настроек.

экземпляр также зарегистрирован как это

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

У меня есть способ заменить эту реализацию serilog аналитикой приложения или каким-то образом использовать ее вместе, чтобы все журналы попадали внутрь аналитики приложения, а не в файловую систему, как настроено прямо сейчас.


person Raas Masood    schedule 05.02.2021    source источник


Ответы (1)


Просто используйте пакет Serilog.Sinks.ApplicationInsights и добавьте AppInsights в качестве приемника для Serilog.

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

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

person silent    schedule 06.02.2021