private static void RegisterServices(Container container) { var appInsightsOptions = new AppInsightsOptions { LogLevel = (LogLevel)Enum.Parse(typeof(LogLevel), ConfigurationManager.AppSettings["LogLevel"]), InstrumentationKey = ConfigurationManager.AppSettings["InstrumentationKey"] }; container.AddApplicationInsightsUsingSimpleInjector().AddAppInsightsLoggingOptions(appInsightsOptions); }
private static void RegisterServices(Container container) { var config = new ConfigurationBuilder().AddJsonFile("appsettings.json").Build(); var appInsightsOptions = new AppInsightsOptions { LogLevel = (LogLevel)Enum.Parse(typeof(LogLevel), config.GetValue <string>("LogLevel")), InstrumentationKey = config.GetValue <string>("InstrumentationKey") }; container.AddApplicationInsightsUsingSimpleInjector().AddAppInsightsLoggingOptions(appInsightsOptions); }
/// <summary> /// Add options like instrumentation key and log levels /// </summary> /// <param name="container"></param> /// <param name="options"></param> /// <returns></returns> public static Container AddAppInsightsLoggingOptions(this Container container, AppInsightsOptions options) { if (options == null) { throw new ArgumentNullException(nameof(options)); } if (!_isTelemetryRegistered) { container.RegisterSingleton(new TelemetryClient(new TelemetryConfiguration(options.InstrumentationKey))); } container.RegisterSingleton(typeof(LogOptions), options); return(container); }