Eigenverft.NetLib.Configuration.Diagnostics
1.0.0.5-g17613f8942
See the version list below for details.
dotnet add package Eigenverft.NetLib.Configuration.Diagnostics --version 1.0.0.5-g17613f8942
NuGet\Install-Package Eigenverft.NetLib.Configuration.Diagnostics -Version 1.0.0.5-g17613f8942
<PackageReference Include="Eigenverft.NetLib.Configuration.Diagnostics" Version="1.0.0.5-g17613f8942" />
<PackageVersion Include="Eigenverft.NetLib.Configuration.Diagnostics" Version="1.0.0.5-g17613f8942" />
<PackageReference Include="Eigenverft.NetLib.Configuration.Diagnostics" />
paket add Eigenverft.NetLib.Configuration.Diagnostics --version 1.0.0.5-g17613f8942
#r "nuget: Eigenverft.NetLib.Configuration.Diagnostics, 1.0.0.5-g17613f8942"
#:package Eigenverft.NetLib.Configuration.Diagnostics@1.0.0.5-g17613f8942
#addin nuget:?package=Eigenverft.NetLib.Configuration.Diagnostics&version=1.0.0.5-g17613f8942&prerelease
#tool nuget:?package=Eigenverft.NetLib.Configuration.Diagnostics&version=1.0.0.5-g17613f8942&prerelease
Eigenverft.NetLib.Configuration.Diagnostics
Log which provider wins and where configuration keys are shadowed during host startup. Diagnostics report provider origins and key paths without logging configuration values.
✨ At a glance
| Package | Eigenverft.NetLib.Configuration.Diagnostics |
| Main API | builder.LogConfigurationResolution(logger) |
| Scope | IHostApplicationBuilder before Build() |
| Reports | Provider order and keys present in multiple providers |
| Target frameworks | .NET 8 and .NET 10 |
| License | MIT |
📦 Installation
dotnet add package Eigenverft.NetLib.Configuration.Diagnostics
🚀 Quick start
Add the configuration providers first, then log the completed precedence and collision scan before building the host:
using Eigenverft.NetLib.Configuration.Diagnostics;
using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.Hosting;
using Microsoft.Extensions.Logging;
HostApplicationBuilder builder = Host.CreateApplicationBuilder(args);
builder.Configuration.AddJsonFile(
"other-settings.json",
optional: true,
reloadOnChange: true);
using ILoggerFactory loggerFactory =
LoggerFactory.Create(logging => logging.AddConsole());
ILogger startupLogger = loggerFactory.CreateLogger("ConfigurationStartup");
builder.LogConfigurationResolution(startupLogger);
using IHost host = builder.Build();
await host.RunAsync();
The helper returns the same builder for chaining. Lower-level calls, LogProviderOrder(configuration, logger) and LogKeyCollisions(configuration, logger), are available when only one diagnostic is needed.
🔎 What is reported
Provider order is written highest precedence first; the last registered provider wins in the standard .NET configuration stack. Collision output lists each complete key path and its winner-to-shadowed provider chain. JSON origins use the file name rather than the full path.
Configuration values are never logged. Collision inspection reads provider data for diagnostics; a provider whose data cannot be inspected is reported as an incomplete scan, so collision results may be partial for opaque custom providers.
Call after all configuration sources have been registered and before Build(). This package consumes but does not create an ILogger; Logging.Bootstrap can provide startup logging before the host exists. If you intentionally reset host defaults first, see Configuration.Sources, then add the providers to inspect.
🎯 Target frameworks
The package targets net8.0 and net10.0.
🔗 Project links
📄 License
| 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 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.Hosting (>= 10.0.0)
-
net8.0
- Microsoft.Extensions.Hosting (>= 8.0.1)
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 1.0.0.5-gdfdd996480 | 0 | 9/29/2026 |
| 1.0.0.5-g17613f8942 | 0 | 9/29/2026 |
| 1.0.0.3-g28e841270d | 0 | 9/28/2026 |
| 1.0.0.2-gbac57d8b97 | 0 | 9/11/2026 |
| 1.0.0.2-g9537b96514 | 0 | 9/11/2026 |
Initial capability package extracted from Eigenverft.NetLib.Infrastructure.