2016-06-21 9 views
1

Ich möchte nur eine einfache Protokollierung auf der Konsole durchführen und die Ausnahmeinformationen sehr kurz halten. Ich möchte auch die Zusatzmeldung anzeigen, wenn sie geliefert wurde.

Hier ist mein Ziel:

<target name="console" xsi:type="ColoredConsole" layout="${message} | ${exception:format=message}" /> 

In meinem Code, wenn ich dies tun:

try 
{ 
    throw new DivideByZeroException("Should not divide by zero"); 
} 
catch (Exception e) 
{ 
    _logger.Error(e, "A supplementary message"); 
} 

Die folgende an die Konsole gesendet wird:

A supplementary message | Should not divide by zero

Diese ist genau das, was ich will.

jedoch, wenn ich stattdessen die Ergänzungsmeldung wie _logger.Error(e); dann unterlassen, was passiert ist, ich die volle Ausnahme Dump erhalten (Stack-Trace, etc.) für die ${message} Layout-Renderer.

Wie kann ich NLog so konfigurieren, dass, wenn keine zusätzliche Nachricht angegeben wird, nichts für die Nachricht ausgegeben wird? Ich würde mich freuen, wenn die folgende Ausgabe an die Konsole war:

| Should not divide by zero

Antwort

0

Dies ist ein bekanntes Problem, und wegen backwardscompatibility dies wird in der nächsten Hauptversion (NLog 5)

See fixiert werden Github issue

Verwandte Themen