Welcome to Common.Logging!
Common.Logging provides a basic logging abstraction for developers to code against that makes it easy to switch your application from one logging framework to the next via simple configuration. Common.Logging offers multiple ready-built adapters to support the most popular logging frameworks in the .NET ecosystem today.
If your logging framework of choice isn't already supported, Common.Logging also provides a set of ready-to-use base classes that make it very low-friction to extend Common.Logging support to just about any logging framework you might need.
Support for most popular logging Frameworks
Common.Logging provides adapters that support all of the following popular logging targets/frameworks in .NET:
- Log4Net (v1.2.9 - v1.2.15)
- NLog (v1.0 - v4.4.1)
- SeriLog (v1.5.14)
- Microsoft Enterprise Library Logging Application Block (v3.1 - v6.0)
- Microsoft AppInsights (2.4.0)
- Microsoft Event Tracing for Windows (ETW) [overview]
- Log to STDOUT
- Log to DEBUG OUT
Support for most popular .NET Runtime EnvironmentsCommon.Logging offers Logging abstractions to support you regardless of the .NET run-time environment you're targeting. Common.Logging supports all of the following popular .NET run-times:
- .NET 2.0
- .NET 3.0
- .NET 3.5
- .NET 4.0
- .NET 4.5
- Silverlight 5.0
- Windows Phone 7.x
- Windows Phone 8.x
- WinRT 8.1 (for Windows 8.1 and Windows Phone 8.1)
- Universal Windows Platform 10.0+ (WinRT for Windows 10)
- .NET Core 1.0
Getting Started with Common.Logging
Using Common.Logging in your own Project
As seen from the lists above, Common.Logging offers support for a very wide variety of both logging frameworks and .NET run-times. To support this variety, Common.Logging has adopted a highly-modular NuGet packaging strategy. This means that developers need only consume the packages from Common.Logging specifically for their desired combination of .NET run-time, logging framework type, and logging framework version.
Before selecting which Common.Logging package(s) to add to your project, developers are encouraged to visit the Common.Logging Wiki and familiarize themselves with the packaging strategy for Common.Logging explained there.
Contributing to Common.Logging
The Common.Logging project is hosted on GitHub; follow the link at the top of this page to visit the source repository, report any issues, and join in the community!