Home

Awesome

Simple Logging Facade for .Net (slf4net)

NuGet NuGet Build Status License: MIT

The slf4net project serves as a light weight abstraction layer for various logging frameworks such as log4net and NLog. This allows the end user to plug in the desired logging framework at deployment time.

This project was inspired by the Java slf4j project (which it tries to follow as closely as possible) and an earlier .Net slf project.

Installing slf4net

Find slf4net on nuget.org: http://nuget.org/packages?q=slf4net

When deploying your application, choose either the slf4net.log4net or slf4net.NLog package, or create your own wrapper for your favourite logging framework.

Configuration

See the configuration wiki page.

Getting started

Intall the slf4net nuget package to your project. If a logger factory is not configured, a NOPLogger (no operation logger) will be used. Start logging.

using System;

namespace slf4net.Samples
{
    public class MyClass
    {

        private static readonly slf4net.ILogger _logger = slf4net.LoggerFactory.GetLogger(typeof(MyClass));

        public void Foo()
        {
            _logger.Trace("Foo started at {0}.", DateTime.Now);

            // Do some work

            _logger.Trace("Foo() completed at {0}.", DateTime.Now);
        }

    }
}

License terms

slf4net is published under the MIT license.

Building

Rebuild and run tests:

msbuild -t:clean,rebuild,test -restore -p:Configuration=Release src/slf4net.sln

Package:

version=1.0.0
path=${PWD}/nuget
msbuild -t:clean,rebuild,test,pack -restore -p:Configuration=Release,Version=${version},PackageOutputPath=${path} src/slf4net.sln