.UseSerilog((context, loggerConfig) =>
if (context.HostingEnvironment.IsDevelopment())
loggerConfig.WithFlexDefaultWebConfiguration("ECommerceDemo.EndPoint.WebAPI", _configuration)
.MinimumLevel.Override("Microsoft", LogEventLevel.Warning)
.MinimumLevel.Override("System", LogEventLevel.Warning)
.MinimumLevel.Override("Microsoft.AspNetCore.Authentication", LogEventLevel.Information)
.WritePerformanceMonitorToColoredConsole()
.WriteUsageToColoredConsole()
.WriteToFile("ECommerceDemo.EndPoint.WebAPI.log.txt")
.WritePerformanceMonitorToFile("ECommerceDemo.EndPoint.WebAPI.log.perf.txt")
.WriteUsageToFile("ECommerceDemo.EndPoint.WebAPI.log.usage.txt");
if (context.HostingEnvironment.IsStaging())
Guard.AgainstNullAndEmpty("AzureStorageConnectionString cannot be empty", _configuration.GetSection("FlexBase")["AzureStorageConnectionString"]);
string azureStorageConnectionString = _configuration.GetSection("FlexBase")["AzureStorageConnectionString"];
loggerConfig.WithFlexDefaultWebConfiguration("ECommerceDemo.EndPoint.WebAPI", _configuration)
.MinimumLevel.Override("Microsoft", LogEventLevel.Warning)
.MinimumLevel.Override("System", LogEventLevel.Warning)
.MinimumLevel.Override("Microsoft.AspNetCore.Authentication", LogEventLevel.Information)
.WritePerformanceMonitorToColoredConsole()
.WriteUsageToColoredConsole()
.WriteToAzureTableStorage(azureStorageConnectionString, "GeneralLogs")
.WritePerformanceMonitorToAzureTableStorage(azureStorageConnectionString, "PerformanceTable")
.WriteUsageToAzureTableStorage(azureStorageConnectionString, "UsageTable");
if (context.HostingEnvironment.IsProduction())
Guard.AgainstNullAndEmpty("AzureStorageConnectionString cannot be empty", _configuration.GetSection("FlexBase")["AzureStorageConnectionString"]);
string azureStorageConnectionString = _configuration.GetSection("FlexBase")["AzureStorageConnectionString"];
loggerConfig.WithFlexDefaultWebConfiguration("ECommerceDemo.EndPoint.WebAPI", _configuration)
.MinimumLevel.Information()
.MinimumLevel.Override("Microsoft", LogEventLevel.Warning)
.MinimumLevel.Override("System", LogEventLevel.Warning)
.MinimumLevel.Override("Microsoft.AspNetCore.Authentication", LogEventLevel.Information)
.WritePerformanceMonitorToColoredConsole()
.WriteUsageToColoredConsole()
.WriteToAzureTableStorage(azureStorageConnectionString, "GeneralLogs")
.WritePerformanceMonitorToAzureTableStorage(azureStorageConnectionString, "PerformanceTable")
.WriteUsageToAzureTableStorage(azureStorageConnectionString, "UsageTable");