diff --git a/.gitignore b/.gitignore index 940794e..a85b957 100644 --- a/.gitignore +++ b/.gitignore @@ -286,3 +286,6 @@ __pycache__/ *.btm.cs *.odx.cs *.xsd.cs + +samples/Sample/logs/ + diff --git a/samples/Sample/logs/log-20210214.txt b/samples/Sample/logs/log-20210214.txt deleted file mode 100644 index 0cc28d9..0000000 --- a/samples/Sample/logs/log-20210214.txt +++ /dev/null @@ -1,56 +0,0 @@ -2021-02-14 16:53:57.353 +10:00 [INF] Now listening on: https://localhost:5001 -2021-02-14 16:53:57.378 +10:00 [INF] Now listening on: http://localhost:5000 -2021-02-14 16:53:57.380 +10:00 [INF] Application started. Press Ctrl+C to shut down. -2021-02-14 16:53:57.381 +10:00 [INF] Hosting environment: Development -2021-02-14 16:53:57.382 +10:00 [INF] Content root path: C:\Development\nblumhardt\serilog-aspnetcore\samples\Sample -2021-02-14 16:54:09.107 +10:00 [INF] Hello, world! -2021-02-14 16:54:09.207 +10:00 [INF] HTTP GET / responded 200 in 140.1571 ms -2021-02-14 16:54:11.340 +10:00 [INF] Hello, world! -2021-02-14 16:54:11.344 +10:00 [INF] HTTP GET / responded 200 in 3.9973 ms -2021-02-14 16:54:12.625 +10:00 [ERR] HTTP GET /Home/Privacy responded 500 in 3.3769 ms -System.InvalidOperationException: Something went wrong. - at Sample.Controllers.HomeController.Privacy() in C:\Development\nblumhardt\serilog-aspnetcore\samples\Sample\Controllers\HomeController.cs:line 38 - at lambda_method17(Closure , Object , Object[] ) - at Microsoft.AspNetCore.Mvc.Infrastructure.ActionMethodExecutor.SyncActionResultExecutor.Execute(IActionResultTypeMapper mapper, ObjectMethodExecutor executor, Object controller, Object[] arguments) - at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.InvokeActionMethodAsync() - at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.Next(State& next, Scope& scope, Object& state, Boolean& isCompleted) - at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.InvokeNextActionFilterAsync() ---- End of stack trace from previous location --- - at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.Rethrow(ActionExecutedContextSealed context) - at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.Next(State& next, Scope& scope, Object& state, Boolean& isCompleted) - at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.InvokeInnerFilterAsync() ---- End of stack trace from previous location --- - at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.g__Awaited|24_0(ResourceInvoker invoker, Task lastTask, State next, Scope scope, Object state, Boolean isCompleted) - at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.Rethrow(ResourceExecutedContextSealed context) - at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.Next(State& next, Scope& scope, Object& state, Boolean& isCompleted) - at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.InvokeFilterPipelineAsync() ---- End of stack trace from previous location --- - at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.g__Awaited|17_0(ResourceInvoker invoker, Task task, IDisposable scope) - at Microsoft.AspNetCore.Routing.EndpointMiddleware.g__AwaitRequestTask|6_0(Endpoint endpoint, Task requestTask, ILogger logger) - at Microsoft.AspNetCore.Authorization.AuthorizationMiddleware.Invoke(HttpContext context) - at Serilog.AspNetCore.RequestLoggingMiddleware.Invoke(HttpContext httpContext) in C:\Development\nblumhardt\serilog-aspnetcore\src\Serilog.AspNetCore\AspNetCore\RequestLoggingMiddleware.cs:line 60 -2021-02-14 16:54:12.667 +10:00 [ERR] An unhandled exception has occurred while executing the request. -System.InvalidOperationException: Something went wrong. - at Sample.Controllers.HomeController.Privacy() in C:\Development\nblumhardt\serilog-aspnetcore\samples\Sample\Controllers\HomeController.cs:line 38 - at lambda_method17(Closure , Object , Object[] ) - at Microsoft.AspNetCore.Mvc.Infrastructure.ActionMethodExecutor.SyncActionResultExecutor.Execute(IActionResultTypeMapper mapper, ObjectMethodExecutor executor, Object controller, Object[] arguments) - at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.InvokeActionMethodAsync() - at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.Next(State& next, Scope& scope, Object& state, Boolean& isCompleted) - at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.InvokeNextActionFilterAsync() ---- End of stack trace from previous location --- - at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.Rethrow(ActionExecutedContextSealed context) - at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.Next(State& next, Scope& scope, Object& state, Boolean& isCompleted) - at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.InvokeInnerFilterAsync() ---- End of stack trace from previous location --- - at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.g__Awaited|24_0(ResourceInvoker invoker, Task lastTask, State next, Scope scope, Object state, Boolean isCompleted) - at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.Rethrow(ResourceExecutedContextSealed context) - at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.Next(State& next, Scope& scope, Object& state, Boolean& isCompleted) - at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.InvokeFilterPipelineAsync() ---- End of stack trace from previous location --- - at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.g__Awaited|17_0(ResourceInvoker invoker, Task task, IDisposable scope) - at Microsoft.AspNetCore.Routing.EndpointMiddleware.g__AwaitRequestTask|6_0(Endpoint endpoint, Task requestTask, ILogger logger) - at Microsoft.AspNetCore.Authorization.AuthorizationMiddleware.Invoke(HttpContext context) - at Serilog.AspNetCore.RequestLoggingMiddleware.Invoke(HttpContext httpContext) in C:\Development\nblumhardt\serilog-aspnetcore\src\Serilog.AspNetCore\AspNetCore\RequestLoggingMiddleware.cs:line 60 - at Microsoft.AspNetCore.Diagnostics.DeveloperExceptionPageMiddleware.Invoke(HttpContext context) -2021-02-14 16:54:29.864 +10:00 [INF] Application is shutting down... -2021-02-14 16:54:29.877 +10:00 [INF] Stopped cleanly diff --git a/src/Serilog.AspNetCore/AspNetCore/RequestLoggingOptions.cs b/src/Serilog.AspNetCore/AspNetCore/RequestLoggingOptions.cs index 1c7b434..bd6fead 100644 --- a/src/Serilog.AspNetCore/AspNetCore/RequestLoggingOptions.cs +++ b/src/Serilog.AspNetCore/AspNetCore/RequestLoggingOptions.cs @@ -70,9 +70,9 @@ static LogEventLevel DefaultGetLevel(HttpContext ctx, double _, Exception ex) => /// /// Include the full URL query string in the RequestPath property - /// that is attached to request log events. The default is true. + /// that is attached to request log events. The default is false. /// - public bool IncludeQueryInRequestPath { get; set; } = true; + public bool IncludeQueryInRequestPath { get; set; } /// /// Constructor diff --git a/src/Serilog.AspNetCore/Serilog.AspNetCore.csproj b/src/Serilog.AspNetCore/Serilog.AspNetCore.csproj index 35edf68..c6ca09e 100644 --- a/src/Serilog.AspNetCore/Serilog.AspNetCore.csproj +++ b/src/Serilog.AspNetCore/Serilog.AspNetCore.csproj @@ -2,7 +2,7 @@ Serilog support for ASP.NET Core logging - 4.1.1 + 5.0.0 Microsoft;Serilog Contributors netstandard2.0;netstandard2.1;netcoreapp3.1;net5.0 true @@ -24,11 +24,15 @@ + + $(DefineConstants);HOSTBUILDER + + - - - + + + diff --git a/src/Serilog.AspNetCore/SerilogWebHostBuilderExtensions.cs b/src/Serilog.AspNetCore/SerilogWebHostBuilderExtensions.cs index ffc45b9..7de1bef 100644 --- a/src/Serilog.AspNetCore/SerilogWebHostBuilderExtensions.cs +++ b/src/Serilog.AspNetCore/SerilogWebHostBuilderExtensions.cs @@ -38,6 +38,9 @@ public static class SerilogWebHostBuilderExtensions /// WriteTo.Providers() configuration method, enabling other s to receive events. By /// default, only Serilog sinks will receive events. /// The web host builder. +#if HOSTBUILDER + [Obsolete("Prefer UseSerilog() on IHostBuilder")] +#endif public static IWebHostBuilder UseSerilog( this IWebHostBuilder builder, ILogger logger = null, @@ -83,6 +86,9 @@ public static IWebHostBuilder UseSerilog( /// the Microsoft.Extensions.Logging API. Normally, equivalent Serilog sinks are used in place of providers. Specify /// true to write events to all providers. /// The web host builder. +#if HOSTBUILDER + [Obsolete("Prefer UseSerilog() on IHostBuilder")] +#endif public static IWebHostBuilder UseSerilog( this IWebHostBuilder builder, Action configureLogger, diff --git a/test/Serilog.AspNetCore.Tests/Serilog.AspNetCore.Tests.csproj b/test/Serilog.AspNetCore.Tests/Serilog.AspNetCore.Tests.csproj index 2aff90a..c229883 100644 --- a/test/Serilog.AspNetCore.Tests/Serilog.AspNetCore.Tests.csproj +++ b/test/Serilog.AspNetCore.Tests/Serilog.AspNetCore.Tests.csproj @@ -14,8 +14,8 @@ - - + + diff --git a/test/Serilog.AspNetCore.Tests/SerilogWebHostBuilderExtensionsTests.cs b/test/Serilog.AspNetCore.Tests/SerilogWebHostBuilderExtensionsTests.cs index 6c12183..e3ba4a0 100644 --- a/test/Serilog.AspNetCore.Tests/SerilogWebHostBuilderExtensionsTests.cs +++ b/test/Serilog.AspNetCore.Tests/SerilogWebHostBuilderExtensionsTests.cs @@ -12,6 +12,9 @@ using Serilog.Filters; using Serilog.AspNetCore.Tests.Support; +// Newer frameworks provide IHostBuilder +#pragma warning disable CS0618 + namespace Serilog.AspNetCore.Tests { public class SerilogWebHostBuilderExtensionsTests : IClassFixture