[This is preliminary documentation and is subject to change.]

Mock target - useful for testing.

Namespace:  NLog.Targets
Assembly:  NLog (in NLog.dll) Version: 2.0.1.0

Syntax

C#
public sealed class DebugTarget : TargetWithLayout
Visual Basic (Declaration)
Public NotInheritable Class DebugTarget _
	Inherits TargetWithLayout
Visual Basic (Usage)
Dim instance As DebugTarget

Examples

To set up the target in the configuration file, use the following syntax:

CopyXML
 1<?xml version="1.0" ?>
 2<nlog xmlns="http://www.nlog-project.org/schemas/NLog.xsd"
 3      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
 4    <targets>
 5        <target name="debug" xsi:type="Debug" layout="${message}" />
 6    </targets>
 7
 8    <rules>
 9        <logger name="*" minlevel="Info" writeTo="debug" />
10    </rules>
11</nlog>

This assumes just one target and a single rule. More configuration options are described here.

To set up the log target programmatically use code like this:

CopyC#
 1using System;
 2
 3using NLog;
 4using NLog.Targets;
 5
 6class Example
 7{
 8    static void Main(string[] args)
 9    {
10        DebugTarget target = new DebugTarget();
11        target.Layout = "${message}";
12
13        NLog.Config.SimpleConfigurator.ConfigureForTargetLogging(target, LogLevel.Debug);
14
15        Logger logger = LogManager.GetLogger("Example");
16        logger.Debug("log message");
17        logger.Debug("another log message");
18
19        Console.WriteLine("The debug target has been hit {0} times.", target.Counter);
20        Console.WriteLine("The last message was '{0}'.", target.LastMessage);
21    }
22}

Inheritance Hierarchy

Object
  NLog.Targets..::.Target
    NLog.Targets..::.TargetWithLayout
      NLog.Targets..::.DebugTarget

See Also