log4Net 动态改变写入文件
方法一:
1) 设定 增加file type和变量,其中 %property 是对应GloalContext.Proerties,现在变量是a
<file type="log4net.Util.PatternString" value="log/%property{a}Log.txt" />
2)在程序的开头,也是没有调用任何log4net方法之前,加入
GlobalContext.Properties["a"]="OKTest""
3) 开始写日志。
方法二:
只对RollingFileAppender有效。好处是喜欢什么时候改就什么时候改。
foreach (IAppender appender in LogManager.GetAllRepositories()[0].GetAppenders()) { var rollingFile = appender as RollingFileAppender; if (rollingFile != null) { rollingFile.File = filePath; rollingFile.ActivateOptions(); } }