nlog 记录器和过滤器
nlog logger and filters
我想应用过滤器来阻止通过电子邮件发送的某些错误,但仍将它们记录到文件中
f 是文件目标,m 是邮件目标,在我应用此过滤器之前两者都工作正常:
<rules>
<logger name="*" minlevel="Error" writeTo="f" />
<logger name="*" minlevel="Error" writeTo="m" >
<filters>
<when condition="contains(${message}, 'Some message exception text')" action="Ignore" />
</filters>
</logger>
</rules>
如果抛出包含 'Some message exception text' 的错误,我希望条目仍会出现在文件日志中,但事实并非如此。我没有收到电子邮件,这正是我想要的,但文件中没有任何记录。
我是否错误地设置了过滤器,或者这是 nlog 的预期行为?
试试这个:您忘记为 ${message} 使用“'”=> '${message}'
<filters>
<when condition="contains('${message}', 'Some message exception text' )" action="Ignore"/>
</filters>
我想应用过滤器来阻止通过电子邮件发送的某些错误,但仍将它们记录到文件中
f 是文件目标,m 是邮件目标,在我应用此过滤器之前两者都工作正常:
<rules>
<logger name="*" minlevel="Error" writeTo="f" />
<logger name="*" minlevel="Error" writeTo="m" >
<filters>
<when condition="contains(${message}, 'Some message exception text')" action="Ignore" />
</filters>
</logger>
</rules>
如果抛出包含 'Some message exception text' 的错误,我希望条目仍会出现在文件日志中,但事实并非如此。我没有收到电子邮件,这正是我想要的,但文件中没有任何记录。
我是否错误地设置了过滤器,或者这是 nlog 的预期行为?
试试这个:您忘记为 ${message} 使用“'”=> '${message}'
<filters>
<when condition="contains('${message}', 'Some message exception text' )" action="Ignore"/>
</filters>