LogMachina.NLog 1.1.0

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

LogMachina.NLog

LogMachina.NLog provides an NLog-backed implementation of the LogMachina abstractions.

Use this package when your application depends on ILogMachina<TSource> and you want log events to be written through NLog while keeping application code independent from the logging provider.

What this package provides

  • NLogLogMachina<TSource> as an implementation of ILogMachina<TSource>
  • NLogLogMachinaFactory as an implementation of ILogMachinaFactory
  • typed loggers where TSource identifies the component emitting the log entry

Each call to Debug, Info, Trace, Warn, or Error is translated to the corresponding NLog level.

Install

dotnet add package LogMachina.NLog

If you want to resolve LogMachina services from IServiceCollection, also install:

dotnet add package LogMachina.DependencyInjection

Basic usage

You can instantiate the logger directly:

using LogMachina;
using LogMachina.NLog;

var log = new NLogLogMachina<OrderProcessor>();

log.Info("Processing order");
log.Warn("Using fallback path");

Or create it via the factory:

using LogMachina;
using LogMachina.NLog;

ILogMachinaFactory factory = new NLogLogMachinaFactory();
var log = factory.Create<OrderProcessor>();

log.Info("Created from factory");

Example

using LogMachina;

public sealed class OrderProcessor
{
    private readonly ILogMachina<OrderProcessor> Log;

    public OrderProcessor(ILogMachina<OrderProcessor> log)
    {
        Log = log;
    }

    public void Process()
    {
        Log.Info("Processing order");
    }
}

NLog configuration

This package does not replace normal NLog configuration. Configure NLog the same way you already do in your application, for example with:

  • nlog.config
  • NLog.Config.LoggingConfiguration
  • LogManager.Setup(...)

Once NLog is configured, LogMachina.NLog will emit log entries through that configuration.

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

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
1.1.0 168 4/3/2026
1.0.2 130 3/26/2026
1.0.0 114 3/24/2026

Removed provider assembly scanning. Added callback-based provider selection with explicit validation.