【问题标题】:Error while trying to get the log4net log file path in C#尝试在 C# 中获取 log4net 日志文件路径时出错
【发布时间】:2012-01-04 16:35:05
【问题描述】:

我在尝试在 C# 中检索 log4net 日志文件路径时遇到此错误。 这是我使用的代码。

Hierarchy hierarchy = LogManager.GetRepository() as Hierarchy; // WORKS FINE
Logger logger = hierarchy.Root;                                // WORKS FINE
FileAppender appender = logger.Appenders[0] as FileAppender;   // ERROR!!! - Index was out of range. Must be non-negative and less than the size of the collection. [0] Specified argument was out of the range of valid values.
string file = appender.File;

上面提到的数组中似乎没有Appender对象。 有人遇到过吗?

App.config 中我的 log4net 配置部分:

<configSections>
    <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net" />
</configSections>

<log4net debug="true">
    <appender name="LogFileAppender" type="log4net.Appender.FileAppender,log4net" >
        <param name="File" value="C:\\SampleLog\\log.txt" />
        <param name="AppendToFile" value="true" />
        <layout type="log4net.Layout.PatternLayout,log4net">
            <param name="ConversionPattern" value="%date [%thread] %-5level %logger - %message%newline" />
        </layout>
    </appender>
    <root>
        <priority value="ALL" />
        <appender-ref ref="LogFileAppender" />
    </root>
    <category name="Sample.Form1">
        <priority value="ALL" />
    </category>
</log4net>

【问题讨论】:

    标签: c# .net-3.5 log4net log4net-configuration


    【解决方案1】:

    一种可能是您尚未加载配置。你给XmlConfigurator.Configure()打过电话吗?

    如果是这样,您是否在调用之前执行了相关代码?也许就这么简单。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-08-21
      • 2017-01-13
      • 2013-12-29
      • 1970-01-01
      • 2018-03-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多