ND.FW.Observability
0.0.9
dotnet add package ND.FW.Observability --version 0.0.9
NuGet\Install-Package ND.FW.Observability -Version 0.0.9
<PackageReference Include="ND.FW.Observability" Version="0.0.9" />
<PackageVersion Include="ND.FW.Observability" Version="0.0.9" />
<PackageReference Include="ND.FW.Observability" />
paket add ND.FW.Observability --version 0.0.9
#r "nuget: ND.FW.Observability, 0.0.9"
#:package ND.FW.Observability@0.0.9
#addin nuget:?package=ND.FW.Observability&version=0.0.9
#tool nuget:?package=ND.FW.Observability&version=0.0.9
ND Observability Framework provides unified logging, tracing, and metrics
capabilities for .NET microservices using Serilog, OpenTelemetry, and
distributed tracing decorators. The framework simplifies instrumentation
by offering pluggable logger services, trace interceptors, correlation ID
propagation, and out-of-the-box exporters for Loki, PostgreSQL, OTLP and Azure.
| 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. |
-
net8.0
- Azure.Identity (>= 1.21.0)
- Azure.Monitor.OpenTelemetry.Exporter (>= 1.6.0)
- Castle.Core (>= 5.2.1)
- Microsoft.ApplicationInsights (>= 2.23.0)
- Microsoft.Extensions.Configuration (>= 9.0.0)
- Microsoft.Extensions.Configuration.Abstractions (>= 10.0.3)
- Microsoft.Extensions.DependencyInjection.Abstractions (>= 10.0.3)
- OpenTelemetry (>= 1.15.3)
- OpenTelemetry.Exporter.Console (>= 1.13.1)
- OpenTelemetry.Exporter.OpenTelemetryProtocol (>= 1.15.3)
- OpenTelemetry.Extensions.Hosting (>= 1.14.0)
- OpenTelemetry.Instrumentation.AspNetCore (>= 1.13.0)
- OpenTelemetry.Instrumentation.Http (>= 1.13.0)
- OpenTelemetry.Instrumentation.Runtime (>= 1.14.0)
- OpenTelemetry.Instrumentation.SqlClient (>= 1.14.0-beta.1)
- Serilog (>= 4.3.0)
- Serilog.Enrichers.ClientInfo (>= 2.6.0)
- Serilog.Enrichers.Environment (>= 3.0.1)
- Serilog.Enrichers.Process (>= 3.0.0)
- Serilog.Enrichers.Span (>= 3.1.0)
- Serilog.Enrichers.Thread (>= 4.0.0)
- Serilog.Extensions.Logging (>= 9.0.2)
- Serilog.Sinks.ApplicationInsights (>= 5.0.0)
- Serilog.Sinks.Console (>= 6.1.1)
- Serilog.Sinks.Grafana.Loki (>= 8.3.1)
- Serilog.Sinks.OpenTelemetry (>= 4.2.0)
NuGet packages (8)
Showing the top 5 NuGet packages that depend on ND.FW.Observability:
| Package | Downloads |
|---|---|
|
ND.FW.Observability.Ports
ND Observability Port Framework provides reusable ports for Its Dependant Framework Packages |
|
|
ND.FW.ExceptionHandling
Standardised, extensible exception handling framework for .NET applications. Provides taxonomy-driven error classification, consistent business error responses, structured logging and tracing, and support for ASP.NET Core Web APIs and Azure Functions (Isolated Worker). Designed using Ports and Adapters architecture for easy customisation and enterprise integration. |
|
|
ND.FW.GetUserAccess
Reusable command framework implementing hexagonal architecture for secure policy execution |
|
|
ND.FW.DbAccessManager
A unified, provider-agnostic database access abstraction library supporting multiple database providers. Simplifies database operations with a consistent API across different database types. |
|
|
ND.FW.WorkflowEngine
ND Enterprise WorkFlow Framework provides a unified, engine-agnostic abstraction for defining and executing business workflows within the ND IDP platform. Supports Elsa v3 as the backing workflow engine with built-in adapters for activity orchestration, transition wiring, HTTP call execution, and workflow lifecycle management. |
GitHub repositories
This package is not used by any popular GitHub repositories.
Version: 0.0.9
Added:
- Ambient log context via new INDLogContextAccessor / NDLogContextAccessor
(AsyncLocal-backed). ServiceName, CorrelationId, and custom unique/filter
IDs can now be set once at the start of a request or message handler and
are automatically attached to every subsequent log call within that
async flow, without needing to be passed explicitly each time.
- New overloads on INDLoggerService (LogDebug/LogInformation/LogWarning/
LogError/LogFatal) that omit serviceName and correlationId, resolving
them from ambient context instead. Existing method signatures are
unchanged and continue to work exactly as before.
- Explicit-over-ambient precedence: any explicitly passed serviceName,
correlationId, or customUniqueIds value on a log call overrides its
ambient counterpart on a per-key basis; ambient values only fill in
gaps left by explicit arguments.
Changed:
- NDLoggerService now takes a required INDLogContextAccessor dependency
(registered automatically via AddNDLogging). Consumers using the
standard DI extension methods require no changes; only direct
`new NDLoggerService(...)` call sites need updating.
Notes:
- No breaking changes to the public INDLoggerService contract for
existing 7-argument Log* methods.