Getting Started
Architecture
NServiceBus
Transports
Persistence
ServiceInsight
ServicePulse
ServiceControl
Monitoring
Samples

Logging from the user code

Component: NServiceBus
NuGet Package: NServiceBus (9.x)

Logging is done via the Microsoft.Extensions.Logging abstraction either by hosting using the NServiceBus extension for the Microsoft Generic Host, or by using the NServiceBus extensions for Microsoft logging when self-hosting.

Using the NServiceBus logging abstraction

In legacy endpoints the NServiceBus logging abstraction is used for writing log messages from user code.

Set up a single static field to an ILog in the classes, and then use it in all methods:

public class ClassUsingLogging
{
    static ILog log = LogManager.GetLogger<ClassUsingLogging>();
    readonly int times = 2;

    public void SomeMethod()
    {
        log.Warn("Something unexpected happened.");
        if (log.IsDebugEnabled)
        {
            log.Debug("Something expected happened.");
            log.DebugFormat("Also, this other thing happened {0} times.", times);
        }
    }
}