Skip to content
This repository has been archived by the owner. It is now read-only.
Go to file


LibLog Build status NuGet Badge

⚠️ LibLog is now deprecated (see #270).

My recommend course of action for library developers is to use Microsoft.Extensions.Logging.Abstractions as it is now the defacto standard logging interface in the .NET ecosystem. For library developers that wish to continue to use LibLog or need to make adjustments for their needs should copy the code into their project (after all, that's just what LibLog did).

Thanks to all contributors and users for the support over the years.


Designed specifically for library developers, LibLog is a source code package that you install via nuget into your library/framework/application to provide a logging abstraction. It also contains transparent built-in support for NLog, Log4Net, Serilog and Loupe, and allows your users to define a custom provider if necessary.

Please see Wiki for more information.

Availability for old csproj format

LibLog uses .pp file to do a namespace transform (aka source transform) so it fits into your project's namespace. This is handled transparently by the new dotnet sdk as of LibLog version 5.0.0. If you change your project's root namespace then LibLog will automatically change also. For older project formats, please continue to use LibLog 4.x versions.


LibLog is licensed under MIT Licence.

Feedback, compliments or criticism: @randompunter


LibLog is a single file for you to either copy/paste or install via nuget, into your library/framework/application to provide a logging abstraction.





No packages published


You can’t perform that action at this time.