JorgeCostaMacia.Http.Serilog 3.0.2

Prefix Reserved
dotnet add package JorgeCostaMacia.Http.Serilog --version 3.0.2
                    
NuGet\Install-Package JorgeCostaMacia.Http.Serilog -Version 3.0.2
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="JorgeCostaMacia.Http.Serilog" Version="3.0.2" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="JorgeCostaMacia.Http.Serilog" Version="3.0.2" />
                    
Directory.Packages.props
<PackageReference Include="JorgeCostaMacia.Http.Serilog" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add JorgeCostaMacia.Http.Serilog --version 3.0.2
                    
#r "nuget: JorgeCostaMacia.Http.Serilog, 3.0.2"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package JorgeCostaMacia.Http.Serilog@3.0.2
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=JorgeCostaMacia.Http.Serilog&version=3.0.2
                    
Install as a Cake Addin
#tool nuget:?package=JorgeCostaMacia.Http.Serilog&version=3.0.2
                    
Install as a Cake Tool

JorgeCostaMacia.Http.Serilog

Serilog request-logging middleware for ASP.NET Core — request body buffering, request- and authentication-level log-context enrichment, and Serilog's per-request summary log event with a status-based log level.

NuGet Downloads Build License


Install

dotnet add package JorgeCostaMacia.Http.Serilog

Usage

Register in pipeline order:

using JorgeCostaMacia.Http.Serilog.Infrastructure;

app.UseBodyBufferMiddleware();          // enable body re-reading
app.UseEnrichRequestMiddleware();       // scheme, host, ip, body, user-agent, X-Request-ID
app.UseAuthentication();
app.UseEnrichAuthenticationMiddleware(); // UserName (after auth)
app.UseSerilogRequestLogging(options => options.WithDefaults());   // one "Request End" event per request

The request-completion event is logged at Error for exceptions / 5xx, Warning for 4xx, and Information otherwise.

Note: the enrichment logs the complete request body of POST/PUT/PATCH requests, by design (structured, queryable payloads in your log store). Anything the client sends — including credentials, if your API receives them in bodies — reaches the sink, and memory usage grows with the body size, so bound requests upstream (e.g. nginx client_max_body_size and per-IP limits) and keep authentication in headers or an external IdP.

Requirements

One of the following SDKs: .NET 8 / 9 / 10 (.NET 10 recommended).

Depends on Serilog.AspNetCore and the ASP.NET Core shared framework.

About

JorgeCostaMacia.Http.Serilog is part of http-net — ASP.NET Core building blocks, each scoped to a single concern and reusable across your services.

Author: Jorge Costa Maciá

Product Compatible and additional computed target framework versions.
.NET net8.0 is compatible.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed.  net9.0 is compatible.  net9.0-android was computed.  net9.0-browser was computed.  net9.0-ios was computed.  net9.0-maccatalyst was computed.  net9.0-macos was computed.  net9.0-tvos was computed.  net9.0-windows was computed.  net10.0 is compatible.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
3.0.2 33 7/22/2026
3.0.1 42 7/22/2026
3.0.0 86 7/19/2026
2.1.2 101 7/15/2026
2.1.1 92 7/13/2026
2.1.0 95 7/11/2026
2.0.0 96 7/10/2026
1.0.2 97 7/6/2026
1.0.1 98 7/1/2026
1.0.0 101 7/1/2026