我正在使用LogEventInfo将日志文件和数据库条目都记录下来。我还想在将异常抛出到日志文件时记录堆栈跟踪。我想我只需要将LogEventInfo中的Exception属性设置为我想要记录的异常,但它没有工作,日志文件只包含"错误我的消息"。我哪里做错了?感谢。
NLog.config就像
<target xsi:type="File" name="localLogFile" fileName="${basedir}/logs/${shortdate}.log"
layout="${longdate} ${uppercase:${level}} ${message}" />
<logger name="*" minlevel="Debug" writeTo="localLogFile" />
和C#代码
LogEventInfo logentity = new LogEventInfo(LogLevel.Error, "", "my message");
logentity.Properties["errormsg"] = msg;
logentity.Exception = new Exception("Dummy");
logger.Error(logentity);
答案 0 :(得分:1)
您还需要使用${exception}
在布局中打印例外。
所以一个好的布局是:
layout="${longdate} ${uppercase:${level}} ${message} ${exception}" />
检查docs for ${exception}
以了解各种渲染选项。