OLT.Logging.Serilog
10.0.0
Prefix Reserved
dotnet add package OLT.Logging.Serilog --version 10.0.0
NuGet\Install-Package OLT.Logging.Serilog -Version 10.0.0
<PackageReference Include="OLT.Logging.Serilog" Version="10.0.0" />
<PackageVersion Include="OLT.Logging.Serilog" Version="10.0.0" />
<PackageReference Include="OLT.Logging.Serilog" />
paket add OLT.Logging.Serilog --version 10.0.0
#r "nuget: OLT.Logging.Serilog, 10.0.0"
#:package OLT.Logging.Serilog@10.0.0
#addin nuget:?package=OLT.Logging.Serilog&version=10.0.0
#tool nuget:?package=OLT.Logging.Serilog&version=10.0.0
OLT.Logging.Serilog.Enricher - OltEventTypeEnricher
OltEventTypeEnricher is a Serilog enricher that attaches a deterministic, compact event-type identifier to each log event based on the log message template text. This enables grouping, deduplication, and analysis of log events by template rather than by rendered message.
Key points
- Property added:
OltSerilogConstants.Properties.EventType(constant provided in the library). - Hash algorithm: Murmur3 32-bit (Murmur32).
- Input:
LogEvent.MessageTemplate.Text(the message template, not the rendered message). - Output: Uppercase hexadecimal string representation of the 4-byte Murmur3 hash (e.g.
9A3F2B7C). - Purpose: Create a stable identifier for a message template so queries, dashboards, or telemetry systems can aggregate or correlate events by template.
Why use this enricher
Identify the logical event type even when structured properties vary per occurrence.
Group similar events in dashboards or alerts.
Reduce storage/aggregation complexity by using an identifier instead of full templates.
Lightweight and deterministic: same template → same identifier across services.
Explain algorithm:
- Create a new Murmur3 32-bit hasher (
MurmurHash.Create32()). - Convert
logEvent.MessageTemplate.Textto UTF-8 bytes. - Compute 32-bit Murmur hash bytes.
- Convert hash bytes to uppercase hexadecimal string (
Convert.ToHexString). - Create a Serilog
LogEventPropertywith the property name constantOltSerilogConstants.Properties.EventType. - Attach the property to the
LogEventusingAddPropertyIfAbsent.
- Create a new Murmur3 32-bit hasher (
How To: Configure
services.WithOltMSSqlServer();
| Product | Versions 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. |
-
net10.0
- Microsoft.Extensions.DependencyInjection (>= 10.0.0 && < 11.0.0)
- Microsoft.Extensions.Logging (>= 10.0.0 && < 11.0.0)
- murmurhash (>= 1.0.3)
- OLT.Logging.Serilog.Abstractions (>= 10.0.0)
- Serilog (>= 4.3.0)
-
net8.0
- Microsoft.Extensions.DependencyInjection (>= 10.0.0 && < 11.0.0)
- Microsoft.Extensions.Logging (>= 10.0.0 && < 11.0.0)
- murmurhash (>= 1.0.3)
- OLT.Logging.Serilog.Abstractions (>= 10.0.0)
- Serilog (>= 4.3.0)
-
net9.0
- Microsoft.Extensions.DependencyInjection (>= 10.0.0 && < 11.0.0)
- Microsoft.Extensions.Logging (>= 10.0.0 && < 11.0.0)
- murmurhash (>= 1.0.3)
- OLT.Logging.Serilog.Abstractions (>= 10.0.0)
- Serilog (>= 4.3.0)
NuGet packages (1)
Showing the top 1 NuGet packages that depend on OLT.Logging.Serilog:
| Package | Downloads |
|---|---|
|
OLT.Logging.Serilog.Hosting
Package Description |
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 10.0.0 | 61 | 2/25/2026 |
| 10.0.0-beta-0002 | 133 | 12/26/2025 |
| 10.0.0-beta-0001 | 118 | 12/26/2025 |
| 9.0.0 | 545 | 8/25/2025 |
| 9.0.0-beta-0013 | 326 | 1/30/2025 |
| 9.0.0-beta-0011 | 185 | 1/30/2025 |
| 9.0.0-beta-0009 | 196 | 12/30/2024 |
| 9.0.0-beta-0007 | 168 | 12/9/2024 |
| 9.0.0-beta-0005 | 184 | 12/2/2024 |
| 8.4.0-beta-0010 | 159 | 11/7/2024 |
| 8.4.0-beta-0005 | 167 | 10/9/2024 |
| 8.3.1 | 2,374 | 8/26/2024 |
| 8.3.1-beta-0005 | 256 | 8/21/2024 |
| 8.3.0 | 344 | 8/9/2024 |
| 8.3.0-beta-0015 | 223 | 6/3/2024 |
| 8.3.0-beta-0010 | 213 | 5/13/2024 |
| 8.3.0-beta-0005 | 228 | 5/10/2024 |
| 8.2.1 | 741 | 4/22/2024 |
| 8.2.0 | 439 | 4/8/2024 |
| 8.1.0 | 360 | 3/10/2024 |