NLog:如何防止使用$ {message}布局渲染器记录完整的异常详细信息?

时间:2016-06-21 15:28:52

标签: nlog

我只想对控制台进行一些简单的日志记录,并保持异常信息非常简短。如果提供补充信息,我也想显示补充信息。

这是我的目标:

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

在我的代码中,如果我这样做:

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

以下内容发送到控制台:

A supplementary message | Should not divide by zero

这正是我想要的。

然而,如果相反我省略了补充信息 _logger.Error(e);然后发生的事情是我获得了${message}布局渲染器的完整异常转储(堆栈跟踪等)。

如何配置NLog,以便在没有指定补充消息的情况下,不输出任何消息?如果以下内容输出到控制台,我会很高兴:

| Should not divide by zero

1 个答案:

答案 0 :(得分:0)

这是一个已知问题,由于向后兼容性,这将在下一个主要版本(NLog 5)中修复

请参阅Github issue