Enable trace for test app (#178)

This commit is contained in:
Pavel Krymets 2018-04-11 15:55:44 -07:00 committed by GitHub
parent c67a22b4df
commit f7d5f3e64e
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 26 additions and 3 deletions

View File

@ -24,7 +24,9 @@ namespace IISSample
public void ConfigureJavaScript(IApplicationBuilder app)
{
Console.WriteLine("ConfigureJavaScript 1");
app.UseMvcWithDefaultRoute();
Console.WriteLine("ConfigureJavaScript 2");
}
public void ConfigureDefaultLogging(IApplicationBuilder app, ILoggerFactory loggerFactory)
@ -73,11 +75,12 @@ namespace IISSample
public static void Main(string[] args)
{
Console.WriteLine("Main 1");
var config = new ConfigurationBuilder()
.AddJsonFile("appsettings.json", optional: true, reloadOnChange: true)
.AddCommandLine(args)
.Build();
Console.WriteLine("Main 2");
var host = new WebHostBuilder()
.UseConfiguration(config)
.ConfigureLogging((hostingContext, builder) =>
@ -89,7 +92,7 @@ namespace IISSample
.UseStartup<Startup>()
.UseContentRoot(Directory.GetCurrentDirectory())
.Build();
Console.WriteLine("Main 3");
host.Run();
}
}

View File

@ -13,19 +13,27 @@ namespace Microsoft.AspNetCore.ApplicationInsights.HostingStartup
{
public Action<IApplicationBuilder> Configure(Action<IApplicationBuilder> next)
{
Console.WriteLine("ApplicationInsightsLoggerStartupFilter 1");
return builder =>
{
Console.WriteLine("ApplicationInsightsLoggerStartupFilter 2");
var loggerFactory = builder.ApplicationServices.GetService<ILoggerFactory>();
// We need to disable filtering on logger, filtering would be done by LoggerFactory
var loggerEnabled = true;
Console.WriteLine("ApplicationInsightsLoggerStartupFilter 3");
loggerFactory.AddApplicationInsights(
builder.ApplicationServices,
(s, level) => loggerEnabled,
() => loggerEnabled = false);
Console.WriteLine("ApplicationInsightsLoggerStartupFilter 4");
next(builder);
Console.WriteLine("ApplicationInsightsLoggerStartupFilter 5");
};
}
}

View File

@ -29,9 +29,13 @@ namespace Microsoft.AspNetCore.ApplicationInsights.HostingStartup
/// <param name="builder"></param>
public void Configure(IWebHostBuilder builder)
{
Console.WriteLine("ApplicationInsightsHostingStartup 1");
builder.UseApplicationInsights();
Console.WriteLine("ApplicationInsightsHostingStartup 2");
builder.ConfigureServices(InitializeServices);
Console.WriteLine("ApplicationInsightsHostingStartup 3");
}
@ -41,18 +45,26 @@ namespace Microsoft.AspNetCore.ApplicationInsights.HostingStartup
/// <param name="services">The <see cref="IServiceCollection"/> associated with the application.</param>
private void InitializeServices(IServiceCollection services)
{
Console.WriteLine("ApplicationInsightsHostingStartup 4");
services.AddSingleton<IStartupFilter, ApplicationInsightsLoggerStartupFilter>();
services.AddSingleton<ITagHelperComponent, JavaScriptSnippetTagHelperComponent>();
Console.WriteLine("ApplicationInsightsHostingStartup 5");
var home = Environment.GetEnvironmentVariable("HOME");
if (!string.IsNullOrEmpty(home))
{
Console.WriteLine("ApplicationInsightsHostingStartup 6");
var settingsFile = Path.Combine(home, "site", "diagnostics", ApplicationInsightsSettingsFile);
var configurationBuilder = new ConfigurationBuilder()
.AddJsonFile(settingsFile, optional: true, reloadOnChange: true);
services.AddLogging(builder => builder.AddConfiguration(configurationBuilder.Build().GetSection("Logging")));
Console.WriteLine("ApplicationInsightsHostingStartup 7");
var config = configurationBuilder.Build().GetSection("Logging");
Console.WriteLine("ApplicationInsightsHostingStartup 8");
services.AddLogging(builder => builder.AddConfiguration(config));
}
Console.WriteLine("ApplicationInsightsHostingStartup 9");
}
}
}