TCIS.Logging.Abstractions 1.0.0-rc.10

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

TCIS.Logging.Abstractions

📖 Overview

TCIS.Logging.Abstractions contains the core interfaces and contracts used to define the centralized logging system in the TCIS Framework. This library establishes a standard logging structure without directly depending on any specific logging framework (like Serilog or NLog).

✨ Features

  • ILogWriter / ILogWriter<T>: The main interface for logging with a structured request object mechanism.
  • NullLogWriter Fallback: A safe fallback mechanism that ensures Unit Tests or projects that do not call external logging configurations still function properly without NullReference exceptions.
  • Contextual Logging: Definitions such as ILogDetailSink and IInterceptedLogWriter support log collection across the entire business flow.

📦 Installation

dotnet add package TCIS.Logging.Abstractions

🚀 Usage

1. Registering the Fallback (Typically used in Unit Tests)

Ensure your service remains operational (using NullLogWriter) if the actual logging system has not been registered.

using Microsoft.Extensions.DependencyInjection;
using TCIS.Logging.Abstractions.Extensions;

var services = new ServiceCollection();
services.AddNullLogWriterFallback();

2. Injecting and Using ILogWriter

In Domain services or Controllers:

using TCIS.Logging.Abstractions.Abstractions;

public class OrderService
{
    private const string Provider = "order-service";
    private readonly ILogWriter<OrderService> _logger;

    public OrderService(ILogWriter<OrderService> logger)
    {
        _logger = logger;
    }

    public void ProcessOrder(string orderId)
    {
        try
        {
            // Logic processing...
            _logger.LogInformation($"[{Provider}] ProcessOrder: Success", new { OrderId = orderId });
        }
        catch (Exception ex)
        {
            _logger.LogException(ex, new { OrderId = orderId, Action = "ProcessOrder" });
            throw;
        }
    }
}

⚠️ Mandatory Log Format Rules

Always adhere to the format [{provider}] {operation}: {message} with a structured request object passed as the final parameter.

Product 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.

NuGet packages (17)

Showing the top 5 NuGet packages that depend on TCIS.Logging.Abstractions:

Package Downloads
TCIS.Logging

TCIS Core Framework is an application framework for building modular, multi-tenant applications on ASP.NET Core. Logging services and integration for TCIS Framework.

TCIS.EventBus

TCIS Core Framework is an application framework for building modular, multi-tenant applications on ASP.NET Core. Event Bus abstractions and base implementation for TCIS Framework.

TCIS.Http

TCIS Core Framework is an application framework for building modular, multi-tenant applications on ASP.NET Core. HTTP client extensions and utilities for TCIS Framework.

TCIS.Caching

TCIS Core Framework is an application framework for building modular, multi-tenant applications on ASP.NET Core. Core caching abstractions and services for TCIS Framework.

TCIS.MultiTenancy

TCIS Core Framework is an application framework for building modular, multi-tenant applications on ASP.NET Core. Multi-tenancy core abstractions and services for TCIS Framework.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
1.0.0-rc.10 0 7/24/2026
1.0.0-rc.9 108 7/21/2026
1.0.0-rc.8 107 7/21/2026
1.0.0-rc.7 168 7/17/2026
1.0.0-rc.6 179 7/7/2026
1.0.0-rc.5 183 7/7/2026
1.0.0-rc.4 164 6/24/2026
1.0.0-rc.2 162 5/12/2026
1.0.0-rc.1 149 5/12/2026