Skip to content
Rolf Kristensen edited this page Nov 2, 2026 · 15 revisions

NLog v5 supports fluent API:

Legacy Fluent API

⚠️ The original NLog.Fluent-namespace introduced with NLog v3.2 became obsolete with NLog v5

Writing info message via fluent API.

using NLog.Fluent;

_logger.Info()
       .Message("This is a test fluent message '{0}'.", DateTime.Now.Ticks)
       .Property("Test", "InfoWrite")
       .Write();

Writing error message.

try
{
    string text = File.ReadAllText(path);
}
catch (Exception ex)
{
    _logger.Error()
           .Message("Error reading file '{0}'.", path)
           .Exception(ex)
           .Property("Test", "ErrorWrite")
           .Write();
}

Caller Info

Use the static Log class so you don't have to include loggers in all of classes. The static Log class using .net 4.5 caller info to get the logger from the file name.

Writing info message via static Log class with fluent API.

Log.Info()
   .Message("This is a test fluent message.")
   .Property("Test", "InfoWrite")
   .Write();

Writing error message.

try
{
    string text = File.ReadAllText(path);
}
catch (Exception ex)
{
    Log.Error()
        .Message("Error reading file '{0}'.", path)
        .Exception(ex)
        .Property("Test", "ErrorWrite")
        .Write();
}

Clone this wiki locally

⌂ 换网址