这是错误还是我使用了错误的 Log() 重载?

Is this a bug or am I using the wrong Log() overload?

像这样记录时: try {} catch (Exception ex) { Log.Error(ex); } ${message} 包含整个 Exception.ToString()${exception:format=message} 输出 Exception.Message

我预计 ${message} 为空或可能已自动获得 Exception.Message 的值。 (不是因为它们共享一个名称。因为异常对象在 NLog 中得到特殊处理。)

我不确定这是不是一个错误,或者我只是对 Log.Error() 过载抱有错误的期望。我应该改为:

Log.Error(ex, ex.Message);

或提交错误报告?

这是known bug。由于向后兼容,我们不会在 NLog 5 之前修复此问题。