我陷入了一种情况,我认为我需要知道用户在 logging.xml 中指定的日志文件的名称。具体来说,我正在尝试检索元素中value
属性的值file
,如下所示(取自 log4net 文档)
有关完整的详细信息,请参阅 SDK 参考条目:log4net.Appender.FileAppender。
以下示例显示如何配置 FileAppender 以将消息写入文件。指定的文件是 log-file.txt。每次记录过程开始时,该文件将被附加而不是覆盖。
<appender name="FileAppender" type="log4net.Appender.FileAppender">
<file value="log-file.txt" />
<appendToFile value="true" />
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date [%thread] %-5level %logger [%property{NDC}] - %message%newline" />
</layout>
</appender>
当我使用以下代码遍历附加程序时:
log4net.Repository.ILoggerRepository repo = LogManager.GetRepository();
foreach (log4net.Appender.IAppender appender in repo.GetAppenders())
{
FileAppender fa = appender as FileAppender;
}
我无法在fa
对象的任何地方找到值“log-file.txt”。也许我错过了它,因为调试器中暴露了很多成员和数据。
任何人都可以提出一种获得这个价值的方法吗?