本文介绍了Log4Net动态文件名不适用于GlobalContext的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
这真的开始困扰我了。我只是尝试将属性变量添加到log4Net文件名中。我做错了什么?
配置如下:
<appender name="logger1" type="log4net.Appender.FileAppender">
<file type="log4net.Util.PatternString" value="C: empfile_%property{foo}.log" />
<appendToFile value="true" />
<Layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%newline%date --- %message%newline" />
</Layout>
</appender>
代码如下:
string foo= "bar";
log4net.GlobalContext.Properties["foo"] = foo;
_logger.ErrorFormat("test");
生成的日志名称为文件-(空).log
有没有人看到我遗漏了什么?否则在我看来这就是个错误。
推荐答案
您必须在创建记录器之前设置该属性。
这篇关于Log4Net动态文件名不适用于GlobalContext的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!