如何格式化NLog异常输出以获取行分隔符?

问题描述 投票:2回答:1

如何使用NLog错误记录获取以下输出格式;每个异常日志之间的行分隔符。喜欢;2017-06-19 16:53:20|SessionVal| Error message| Exception's Message | StackTrace _______________________________________________________________________________________ 2017-06-19 16:52:10|SessionVal|Error occured while executing the procedure. |Procedure xyz expects varchar(20) @ParameterName.|StackTrace....

当前NLog配置;

<nlog autoReload="true" xmlns="http://www.nlog-project.org/schemas/NLog.xsd" 
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <targets>
    <target name="logfile" xsi:type="File" 
   layout="${date:universalTime=false:format=yyyy-MM-dd HH\:mm\:ss}| 
   ${aspnet- session:Variable=SessionKey} ${message} | 
   ${exception:format=type,message,StackTrace}" 
   fileName="${basedir}/App_Data/Log/ 
   ${date:universalTime=false:format=yyyyMMdd}.log" />
   </targets>
  <rules>
    <logger name="*" minlevel="Info" writeTo="logfile" />
  </rules>
</nlog>

更新: @艾米,你是这样说的吗?更新2:谢谢@Amy,它起作用了。layout="-------------------------------------------------------------- ${newline}${date:universalTime=false:format=yyyy-MM-dd HH\:mm\:ss}| ${aspnet- session:Variable=SessionKey} ${message} | ${exception:format=type,message,StackTrace}" fileName="${basedir}/App_Data/Log/ ${date:universalTime=false:format=yyyyMMdd}.log"

c# logging nlog
1个回答
0
投票

根据问题的质询者,这是一个解决方案:

layout="-------------------------------------------------------------- 
    ${newline}${date:universalTime=false:format=yyyy-MM-dd HH\:mm\:ss}| 
    ${aspnet- session:Variable=SessionKey} ${message} | 
    ${exception:format=type,message,StackTrace}" 
    fileName="${basedir}/App_Data/Log/ 
    ${date:universalTime=false:format=yyyyMMdd}.log"
© www.soinside.com 2019 - 2024. All rights reserved.