log4net 动态设定日志文件名

时间:2022-08-11 07:39:27

参考文章:

http://blog.csdn.net/haoxiaozigang1/article/details/16343303

通过这个篇文章的方法,只能修改文件的路径,文件名并没有修改

参考文章:

http://blog.csdn.net/yangchun1213/article/details/6580014

我修改了一下代码:

var repository = LogManager.GetRepository();
var appenders = repository.GetAppenders();
var targetApder = appenders.First(p => p.Name == "RunLog") as log4net.Appender.RollingFileAppender;
targetApder.File = fileName;
targetApder.Writer = new System.IO.StreamWriter(targetApder.File, targetApder.AppendToFile, targetApder.Encoding);
//targetApder.ActivateOptions();
ILog logger = LogManager.GetLogger(GetType());
logger.Error(ex);

  

  

使用该方法,改了之后,如果不使用

ChangeLog4netLogFileName

方法,直接输出log,它也是修改之后的而不是配置文件中配置的那个。