Soenneker.Utils.Logger
4.0.548
Prefix Reserved
See the version list below for details.
dotnet add package Soenneker.Utils.Logger --version 4.0.548
NuGet\Install-Package Soenneker.Utils.Logger -Version 4.0.548
<PackageReference Include="Soenneker.Utils.Logger" Version="4.0.548" />
<PackageVersion Include="Soenneker.Utils.Logger" Version="4.0.548" />
<PackageReference Include="Soenneker.Utils.Logger" />
paket add Soenneker.Utils.Logger --version 4.0.548
#r "nuget: Soenneker.Utils.Logger, 4.0.548"
#:package Soenneker.Utils.Logger@4.0.548
#addin nuget:?package=Soenneker.Utils.Logger&version=4.0.548
#tool nuget:?package=Soenneker.Utils.Logger&version=4.0.548
Soenneker.Utils.Logger
Builds cached Microsoft ILogger<T> instances backed by Serilog's global logger and exposes a shared runtime level switch.
Installation
dotnet add package Soenneker.Utils.Logger
Quick start
using Soenneker.Utils.Logger;
Call the static LoggerUtil methods directly; no dependency-injection registration is required.
Configure Serilog before creating loggers
using Microsoft.Extensions.Logging;
using Serilog;
using Serilog.Core;
using Soenneker.Utils.Logger;
LoggingLevelSwitch levelSwitch = LoggerUtil.GetSwitch();
Log.Logger = new LoggerConfiguration()
.MinimumLevel.ControlledBy(levelSwitch)
.WriteTo.Console()
.CreateLogger();
ILogger<Worker> logger = LoggerUtil.BuildLogger<Worker>();
The console call requires the corresponding Serilog sink package. Configure Log.Logger before
the first call to BuildLogger or Init: the utility's factory captures that logger and does not
own or dispose it. Application shutdown remains responsible for flushing and closing Serilog.
Change the level at runtime
LoggerUtil.SetLogLevel(LogEventLevel.Warning);
// Or resolve the configured level through Soenneker's configuration logging extension:
LoggerUtil.SetLogLevelFromConfig(configuration);
Level changes affect a logger only when its Serilog configuration uses the shared switch returned
by GetSwitch, as in the setup above. The switch begins at Verbose; sinks and additional Serilog
overrides can still filter events more restrictively.
BuildLogger<T> creates a Microsoft ILogger<T> with category T through the cached factory.
Init is optional because BuildLogger initializes the factory on first use.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | 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
- Serilog.Extensions.Logging (>= 10.0.0)
- Soenneker.Atomics.ValueBools (>= 4.0.38)
- Soenneker.Extensions.Configuration.Logging (>= 4.0.219)
NuGet packages (2)
Showing the top 2 NuGet packages that depend on Soenneker.Utils.Logger:
| Package | Downloads |
|---|---|
|
Soenneker.Tests.Unit
A base test providing faker and autofaker capabilities |
|
|
Soenneker.Extensions.LoggerConfiguration
A set of useful Serilog LoggerConfiguration extension methods |
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 4.0.552 | 1,103 | 9/9/2026 |
| 4.0.551 | 3,115 | 9/9/2026 |
| 4.0.550 | 5,363 | 9/8/2026 |
| 4.0.549 | 8,992 | 9/8/2026 |
| 4.0.548 | 3,870 | 9/8/2026 |
| 4.0.547 | 10,123 | 9/7/2026 |
| 4.0.546 | 87 | 9/7/2026 |
| 4.0.545 | 15,830 | 9/5/2026 |
| 4.0.544 | 13,190 | 9/4/2026 |
| 4.0.543 | 42,713 | 9/1/2026 |
| 4.0.542 | 1,916 | 8/31/2026 |
| 4.0.541 | 6,716 | 8/31/2026 |
| 4.0.540 | 100 | 8/31/2026 |
| 4.0.539 | 83 | 8/31/2026 |
| 4.0.538 | 4,109 | 8/30/2026 |
| 4.0.537 | 87 | 8/30/2026 |
| 4.0.536 | 3,969 | 8/30/2026 |
| 4.0.535 | 855 | 8/30/2026 |
| 4.0.534 | 1,733 | 8/30/2026 |
| 4.0.533 | 94 | 8/29/2026 |
Updated Soenneker.Extensions.Configuration.Logging to 4.0.219