如何在代码中获取日志文件名? (所以我可以把它打印到控制台)
我的日志文件在app.config中定义如下:
<appender name="RollingLogFileAppender"
type="log4net.Appender.RollingFileAppender">
<file value="logfile" />
...
答案 0 :(得分:8)
你看看LogManager.GetAllRepositories。在存储库中,您可以查看ILoggerRepository.GetAppenders中的所有appender。如果appender的类型为RollingFileAppender,则会检查其File属性,或者如果您放弃,则可以Name检查appender。
据说在您的代码中执行此类操作非常非常。如果在部署时更改配置并且您期望的appender不再存在,该怎么办?
答案 1 :(得分:0)
请参阅此文件的属性。
Log是ILog的实例
((log4net.Repository.Hierarchy.DefaultLoggerFactory.LoggerImpl)Log.Logger).Appenders.OfType()。FirstOrDefault()。文件