Fluens.Observability
0.7.9
dotnet add package Fluens.Observability --version 0.7.9
NuGet\Install-Package Fluens.Observability -Version 0.7.9
<PackageReference Include="Fluens.Observability" Version="0.7.9" />
<PackageVersion Include="Fluens.Observability" Version="0.7.9" />
<PackageReference Include="Fluens.Observability" />
paket add Fluens.Observability --version 0.7.9
#r "nuget: Fluens.Observability, 0.7.9"
#:package Fluens.Observability@0.7.9
#addin nuget:?package=Fluens.Observability&version=0.7.9
#tool nuget:?package=Fluens.Observability&version=0.7.9
Fluens.Observability
OpenTelemetry tracing, metrics, logging, and Serilog structured logging integration with optional Seq sink.
Installation
dotnet add package Fluens.Observability
Usage
fluensBuilder
.AddObservability(opts =>
{
opts.OtlpEndpoint = "http://localhost:4317";
opts.SamplingRatio = 1.0;
})
.AddSerilog();
ObservabilityOptions properties: Enabled, EnableTracing, EnableMetrics, EnableLogging, OtlpEndpoint, SamplingRatio, AdditionalSources, AdditionalMeters, SeqEndpoint, SeqApiKey.
Configuration section: Fluens:Observability.
Both AddObservability and AddSerilog accept optional configuration callbacks for inline customization.
A callback-only AddObservability(o => ...) call — with no matching Fluens:Observability configuration
section present — is still honoured and validated: the callback's values reach the composed
ObservabilityOptions instance.
AddSerilog() and AddObservability() can be called in either order: AddSerilog() reads
ObservabilityOptions (for the optional Seq sink) lazily, when the logger is actually built rather
than when AddSerilog() itself is called, so the Seq sink is activated correctly whether
AddObservability(o => o.SeqEndpoint = "...") runs before or after AddSerilog().
When Enabled is true, AddObservability() also registers the composed ObservabilityOptions as a
marker singleton in DI. Fluens.Web.Observability's UseRequestLogging() and UsePrometheusEndpoint()
probe that singleton to tell "enabled" from "disabled via callback/config" or "AddObservability() never
called" - so a host that calls them unconditionally always starts cleanly.
LogSanitizer
Static helpers for redacting PII from log messages. Uses [GeneratedRegex] for AOT-compatible pattern matching.
LogSanitizer.Redact(value); // Replaces entire value with ***REDACTED***
LogSanitizer.MaskEmail(value); // Preserves first two chars of local part and full domain
LogSanitizer.MaskCardNumber(value); // Preserves last four digits
LogSanitizer.MaskPhone(value); // Preserves last four digits
License
This project is licensed under the MIT License.
| 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
- Fluens (>= 0.7.9)
- OpenTelemetry.Exporter.OpenTelemetryProtocol (>= 1.18.0)
- OpenTelemetry.Extensions.Hosting (>= 1.18.0)
- OpenTelemetry.Instrumentation.Http (>= 1.18.0)
- OpenTelemetry.Instrumentation.Runtime (>= 1.18.0)
- Serilog (>= 4.4.0)
- Serilog.Enrichers.Environment (>= 3.0.1)
- Serilog.Enrichers.Thread (>= 4.0.0)
- Serilog.Extensions.Hosting (>= 10.0.0)
- Serilog.Formatting.Compact (>= 3.0.0)
- Serilog.Settings.Configuration (>= 10.0.1)
- Serilog.Sinks.Console (>= 6.1.1)
- Serilog.Sinks.Seq (>= 9.1.0)
NuGet packages (1)
Showing the top 1 NuGet packages that depend on Fluens.Observability:
| Package | Downloads |
|---|---|
|
Fluens.Web.Observability
ASP.NET Core observability features: Prometheus metrics endpoint and request logging middleware. |
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 0.7.9 | 41 | 9/11/2026 |
| 0.7.8 | 64 | 9/10/2026 |
| 0.7.7 | 63 | 9/10/2026 |
| 0.7.6 | 148 | 7/1/2026 |
| 0.7.5 | 125 | 6/22/2026 |
| 0.7.4 | 136 | 6/18/2026 |
| 0.7.2 | 120 | 6/18/2026 |
| 0.7.1 | 137 | 6/18/2026 |
| 0.6.6 | 278 | 3/11/2026 |
| 0.6.5 | 115 | 3/4/2026 |
| 0.6.4 | 113 | 3/4/2026 |
| 0.6.3 | 122 | 3/3/2026 |
| 0.6.2 | 123 | 3/2/2026 |
| 0.6.1 | 127 | 3/2/2026 |
| 0.6.0 | 127 | 3/1/2026 |
| 0.5.7 | 125 | 3/1/2026 |
| 0.5.6 | 125 | 3/1/2026 |
| 0.5.5 | 126 | 2/28/2026 |
| 0.5.4 | 116 | 2/28/2026 |
| 0.5.3 | 124 | 2/27/2026 |