diff --git a/services/SharedKernel/FilterLists.SharedKernel.Logging/ConfigurationExtensions.cs b/services/SharedKernel/FilterLists.SharedKernel.Logging/ConfigurationExtensions.cs index 76ab48a6e..e3139547b 100644 --- a/services/SharedKernel/FilterLists.SharedKernel.Logging/ConfigurationExtensions.cs +++ b/services/SharedKernel/FilterLists.SharedKernel.Logging/ConfigurationExtensions.cs @@ -1,12 +1,14 @@ using System; using FilterLists.SharedKernel.Logging.Options; using Microsoft.ApplicationInsights.Channel; +using Microsoft.ApplicationInsights.Extensibility; using Microsoft.ApplicationInsights.WindowsServer.TelemetryChannel; using Microsoft.AspNetCore.Builder; using Microsoft.Extensions.Configuration; using Microsoft.Extensions.DependencyInjection; using Microsoft.Extensions.Hosting; using Serilog; +using Serilog.Events; namespace FilterLists.SharedKernel.Logging { @@ -14,7 +16,17 @@ public static class ConfigurationExtensions { public static IHostBuilder UseLogging(this IHostBuilder hostBuilder) { - return hostBuilder.UseSerilog(); + return hostBuilder.UseSerilog((_, services, lc) => + lc.MinimumLevel.Debug() + .MinimumLevel.Override("Microsoft", LogEventLevel.Information) + .MinimumLevel.Override("Microsoft.AspNetCore", LogEventLevel.Warning) + .Enrich.FromLogContext() + .WriteTo.Console() + .WriteTo.Conditional( + __ => services.GetService().IsProduction(), + sc => sc.ApplicationInsights( + services.GetRequiredService(), + TelemetryConverter.Traces))); } public static void AddSharedKernelLogging(this IServiceCollection services, IConfiguration configuration) diff --git a/services/SharedKernel/FilterLists.SharedKernel.Logging/HostRunner.cs b/services/SharedKernel/FilterLists.SharedKernel.Logging/HostRunner.cs index 2532135e9..e18221883 100644 --- a/services/SharedKernel/FilterLists.SharedKernel.Logging/HostRunner.cs +++ b/services/SharedKernel/FilterLists.SharedKernel.Logging/HostRunner.cs @@ -1,7 +1,5 @@ using System; using System.Threading.Tasks; -using Microsoft.ApplicationInsights; -using Microsoft.Extensions.DependencyInjection; using Microsoft.Extensions.Hosting; using Serilog; @@ -13,13 +11,6 @@ public static async Task TryRunWithLoggingAsync(this IHost host, Func? run { _ = host ?? throw new ArgumentNullException(nameof(host)); - var telemetryClient = (TelemetryClient)host.Services.GetService(typeof(TelemetryClient)); - Log.Logger = ConfigurationBuilder.BaseLoggerConfiguration - .WriteTo.Conditional( - _ => host.Services.GetService().IsProduction(), - c => c.ApplicationInsights(telemetryClient, TelemetryConverter.Traces)) - .CreateLogger(); - try { if (runPreHostAsync != null)