c# - log4net:错误无法找到配置部分 'log4net'

标签 c# log4net app-config

当我尝试使用以下方式配置记录器时出现此错误:

log4net.Config.XmlConfigurator.Configure();

app.config 如下所示:

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
  <configSections>
    <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net" />
  </configSections>
  <log4net>
    <root>
      <level value="ALL" />
      <appender-ref ref="LogFileAppender" />
    </root>
    <appender name="LogFileAppender" type="log4net.Appender.RollingFileAppender" >
      <param name="File" value="C:\Logs\my-log-file.txt" />
      <param name="AppendToFile" value="true" />
      <rollingStyle value="Size" />
      <maxSizeRollBackups value="10" />
      <maximumFileSize value="10MB" />
      <staticLogFileName value="true" />
      <layout type="log4net.Layout.PatternLayout">
        <param name="ConversionPattern" value="%date [%thread] %-5level %logger [%C{1}.%M] - %message%newline" />
      </layout>
    </appender>
  </log4net>
</configuration>

我正在尝试为系统的每个组件编写单独的日志。我有一个为主类工作,但在尝试为另一个类配置另一个时出现此错误。这是什么原因?

谢谢你!

最佳答案

我最终使用以下配置我的加载项和 RTD:

[加载项]

log4net.Config.XmlConfigurator.Configure(
                new FileInfo(AppDomain.CurrentDomain.BaseDirectory + "MyAdd-In.dll.config"));

[RTD]

log4net.Config.XmlConfigurator.Configure(
                new FileInfo(Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location) + "\\RtdServer.dll.config"));

然后为我的 RTD 配置单独的记录器。

高度

关于c# - log4net:错误无法找到配置部分 'log4net',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19781746/

相关文章:

c# - 在同一域中路由 API 项目和 Web 应用程序项目 (Azure)

c# - log4net 中的第二个 appender 不工作

c# - 哪个是 WPF 编写的应用程序的主要配置文件?

c# - 将 C# 结构传递给 C++ 非托管 DLL 返回不正确的结果

c# - 调用线程 .NET .this 与 .control

c# - Task.Run() 是否与创建 Task 实例然后 Start() 相同?

c# - 如何使用 log4net 使用 Threadpool 线程记录正确的上下文?

log4net - 有损日志记录,错误后还会收到一些消息吗?

c# - 类库的 app.config 中的绑定(bind)重定向有什么作用吗?

.net - 跟踪监听器忽略traceOutputOptions ="DateTime"