Franz.Common.Logging 2.2.17

dotnet add package Franz.Common.Logging --version 2.2.17
                    
NuGet\Install-Package Franz.Common.Logging -Version 2.2.17
                    
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="Franz.Common.Logging" Version="2.2.17" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Franz.Common.Logging" Version="2.2.17" />
                    
Directory.Packages.props
<PackageReference Include="Franz.Common.Logging" />
                    
Project file
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 Franz.Common.Logging --version 2.2.17
                    
#r "nuget: Franz.Common.Logging, 2.2.17"
                    
#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 Franz.Common.Logging@2.2.17
                    
#: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=Franz.Common.Logging&version=2.2.17
                    
Install as a Cake Addin
#tool nuget:?package=Franz.Common.Logging&version=2.2.17
                    
Install as a Cake Tool

Franz.Common.Logging

A comprehensive logging library within the Franz Framework, designed to enhance application monitoring and diagnostics using Serilog and Elastic APM. This package provides tools for centralized logging, tracing, and seamless integration with .NET applications.

  • Current Version: v2.2.17
  • Part of the private Franz Framework ecosystem.

What’s New in 2.2.17

  • Desktop Application Support

  • UseDesktopLog() extension providing thread-aware logging for WPF/Avalonia/MAUI.

  • ThreadIdEnricher added for high-fidelity concurrency diagnostics.

  • Optimized templates: removed web-specific noise (ReqId/Path) to clean up local output.

  • Dual Production Logging (v1.7.6+)

  • SRE logs: JSON, structured, minimal noise, easy to ship to ELK/Datadog.

  • Dev logs: human-readable, verbose, retains stack traces for troubleshooting.

  • Self-contained, production-ready defaults

  • Automatic UTF-8-safe encoding, rolling files, environment-aware enrichers.

  • Global noise suppression applied consistently.


Features

  • Centralized Logging

  • Integration with Serilog for structured and enriched logs.

  • Tracing Utilities

  • TraceHelper for advanced tracing support in distributed applications.

  • Host Extensions

  • UseLog() for strict, environment-aware logging.

  • UseHybridLog() for flexible, configuration-driven logging.

  • UseDesktopLog() for thread-aware desktop diagnostics.

  • Elastic APM Integration

  • Full support for Elastic APM (enabled automatically in DEBUG).

  • Dual Production Logging

  • JSON logs for SRE (prod-sre-.json).

  • Human-readable logs for Dev (prod-dev-.log).


Installation

From Private Azure Feed

dotnet nuget add source "https://your-private-feed-url" \
  --name "AzurePrivateFeed" \
  --username "YourAzureUsername" \
  --password "YourAzurePassword" \
  --store-password-in-clear-text

Install the package:

dotnet add package Franz.Common.Logging --version 2.2.18


Usage

1. Strict Environment-Aware Logging (UseLog)

using Franz.Common.Logging.Extensions;

var host = Host.CreateDefaultBuilder(args)
    .UseLog() 
    .Build();

await host.RunAsync();

2. Desktop-Optimized Logging (UseDesktopLog)

using Franz.Common.Logging.Extensions;

var host = Host.CreateDefaultBuilder(args)
    .UseDesktopLog() 
    .Build();

await host.RunAsync();

  • Thread Enrichment: Injects ThreadId for tracking UI vs. background execution.
  • Desktop Template: [{Timestamp:HH:mm:ss} {Level:u3}] {SourceContext} | Thread:{ThreadId} | {Message:lj}.

3. Hybrid Logging (UseHybridLog)

using Franz.Common.Logging.Extensions;

var host = Host.CreateDefaultBuilder(args)
    .UseHybridLog() 
    .Build();

await host.RunAsync();


Changelog

v2.2.18 - Desktop Diagnostics

  • Introduced UseDesktopLog() for desktop-first applications.
  • Added ThreadIdEnricher for high-fidelity concurrency diagnostics.
  • Optimized log templates for desktop output, removing web-specific infrastructure noise.

v2.2.17 - Filter hardening

  • Logging filters hardened to prevent accidental log noise in production environments.
  • Logging Filters Improved to avoid noise in development environments.

v2.0.1 – Internal Modernization

  • Messaging and infrastructure refactored for async, thread-safety, and modern .NET 10 patterns.
  • All APIs remain fully backward compatible.

Version 1.7.6

  • Dual production logs: prod-sre-.json for SRE, prod-dev-.log for Dev
  • UTF-8 safe, rolling files, 30-day retention
  • Console logging preserved for live monitoring
  • Noise suppression applied consistently across logs
  • Integration-ready for Franz.Common.OpenTelemetry
Product 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. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (7)

Showing the top 5 NuGet packages that depend on Franz.Common.Logging:

Package Downloads
Franz.Common.Messaging.Hosting

Shared utility library for the Franz Framework.

Franz.Common.Bootstrap

Shared utility library for the Franz Framework.

Franz.Common.SSO

Shared utility library for the Franz Framework.

Franz.Common.Messaging.AzureEventHubs

Shared utility library for the Franz Framework.

Franz.Common.Messaging.AzureEventBus

Shared utility library for the Franz Framework.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
2.2.17 7 7/12/2026
2.2.16 270 7/2/2026
2.2.15 271 6/29/2026
2.2.14 273 6/29/2026
2.2.13 268 6/29/2026
2.2.12 265 6/28/2026
2.2.11 279 6/28/2026
2.2.10 269 6/28/2026
2.2.9 267 6/28/2026
2.2.8 266 6/28/2026
2.2.7 275 6/7/2026
2.2.6 275 6/6/2026
2.2.5 283 6/4/2026
2.2.4 277 6/3/2026
2.2.3 273 6/2/2026
2.2.2 278 6/2/2026
2.2.1 274 5/24/2026
2.1.4 242 4/27/2026
2.1.3 226 4/26/2026
2.1.2 226 4/26/2026
Loading failed