From 1a3e7b8dc0268cd7fefaa4b48c08d0f6cac72847 Mon Sep 17 00:00:00 2001 From: "Collin M. Barrett" Date: Sat, 13 Jul 2019 20:37:00 -0500 Subject: [PATCH] warmup QuickPulseTelemetryModule in AddLogging() rather than Main() --- .../DependencyInjection/ServiceCollectionExtensions.cs | 9 +++++++-- src/FilterLists.Agent/Program.cs | 5 ----- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/src/FilterLists.Agent/Infrastructure/DependencyInjection/ServiceCollectionExtensions.cs b/src/FilterLists.Agent/Infrastructure/DependencyInjection/ServiceCollectionExtensions.cs index 55d25fea1..8dc4edbad 100644 --- a/src/FilterLists.Agent/Infrastructure/DependencyInjection/ServiceCollectionExtensions.cs +++ b/src/FilterLists.Agent/Infrastructure/DependencyInjection/ServiceCollectionExtensions.cs @@ -8,6 +8,7 @@ using FilterLists.Agent.Infrastructure.Polly; using FilterLists.Agent.Infrastructure.Web; using MediatR; +using Microsoft.ApplicationInsights.Extensibility.PerfCounterCollector.QuickPulse; using Microsoft.Extensions.Configuration; using Microsoft.Extensions.DependencyInjection; using Serilog; @@ -58,8 +59,12 @@ private static void AddLogging(this IServiceCollection services) { services.AddLogging(b => { - var telemetryClient = b.Services.BuildServiceProvider().GetService() - .TelemetryClient; + var serviceProvider = b.Services.BuildServiceProvider(); + + // init never-resolved singleton + serviceProvider.GetService(); + + var telemetryClient = serviceProvider.GetService().TelemetryClient; b.AddSerilog(new LoggerConfiguration() .WriteTo.Console() .WriteTo.ApplicationInsights(telemetryClient, TelemetryConverter.Traces) diff --git a/src/FilterLists.Agent/Program.cs b/src/FilterLists.Agent/Program.cs index 7aef08098..0644fdde5 100644 --- a/src/FilterLists.Agent/Program.cs +++ b/src/FilterLists.Agent/Program.cs @@ -5,7 +5,6 @@ using FilterLists.Agent.Features.Urls; using FilterLists.Agent.Infrastructure.DependencyInjection; using MediatR; -using Microsoft.ApplicationInsights.Extensibility.PerfCounterCollector.QuickPulse; using Microsoft.Extensions.DependencyInjection; namespace FilterLists.Agent @@ -17,10 +16,6 @@ public static class Program public static async Task Main(string[] args) { _serviceProvider = ServiceProviderBuilder.Build(); - - // init never-resolved singleton - _serviceProvider.GetService(); - var parser = _serviceProvider.GetService(); var mediator = _serviceProvider.GetService(); await parser.ParseArguments(args).MapResult(async o =>