Syntrony.Logging.Log4Net
1.0.1
dotnet add package Syntrony.Logging.Log4Net --version 1.0.1
NuGet\Install-Package Syntrony.Logging.Log4Net -Version 1.0.1
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="Syntrony.Logging.Log4Net" Version="1.0.1" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Syntrony.Logging.Log4Net" Version="1.0.1" />
<PackageReference Include="Syntrony.Logging.Log4Net" />
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 Syntrony.Logging.Log4Net --version 1.0.1
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
#r "nuget: Syntrony.Logging.Log4Net, 1.0.1"
#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 Syntrony.Logging.Log4Net@1.0.1
#: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=Syntrony.Logging.Log4Net&version=1.0.1
#tool nuget:?package=Syntrony.Logging.Log4Net&version=1.0.1
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
Syntrony.Logging.Log4Net
Log4Net as the structured logging sink for Syntrony.Logging — parity with Abp.Castle.Log4Net on top of
ILogger native, without Castle Windsor's LoggingFacility.
builder.Services.AddSyntrony(options =>
{
options.UseLogging(log => log
.WithEnrichment(p => p["service.name"] = "my-service")
.UseLog4Net("log4net.config"));
});
UseLog4Net(this ISyntronyLoggingBuilder, string configFilePath = "log4net.config", bool watch = true)
- Registers Log4Net as the structured sink via
RegisterStructuredSink("Log4Net")— throws if another structured sink (Serilog) already claimed the slot; composes freely withUseOpenTelemetry(), which never claims it. configFilePathis resolved againstIHostEnvironment.ContentRootPathwhen relative (falls back toDirectory.GetCurrentDirectory()if noIHostEnvironmentis registered yet); pass a rooted path to bypass resolution entirely.- Fails fast if the config file is missing — throws
FileNotFoundExceptionwith the resolved path. Log4Net itself silently drops every log entry when its config file can't be found; this package doesn't let that happen unnoticed. watch = true(default) reloads the configuration if the file changes on disk, without restarting the app.- Any properties accumulated via
WithEnrichmenton the builder are applied tolog4net.GlobalContext.Propertiesat the momentUseLog4Netruns — declare enrichment before callingUseLog4Net, not after.
No IHostedService involved — Log4Net sinks configure synchronously, nothing needs to wait for the container to
finish building.
| 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 was computed. 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 was computed. 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.
-
net8.0
- Microsoft.Extensions.Hosting.Abstractions (>= 8.0.1)
- Microsoft.Extensions.Logging.Log4Net.AspNetCore (>= 10.0.0)
- Syntrony.Logging (>= 1.0.1)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.