c# - 从第三方重定向 log4net 日志

标签 c# log4net

我有第三方使用如下所示的配置文件:

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
  <configSections>
    <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler,log4net" />
    <!--Others sections-->
  </configSections>

  <log4net>
    <appender name="RollingFileAppender" type="log4net.Appender.RollingFileAppender">
      <file value=".\logs\logclient.txt" />
      <appendToFile value="false" />
      <rollingStyle value="Date" />
      <maximumFileSize value="1000KB" />
      <layout type="log4net.Layout.PatternLayout">
        <conversionPattern value="%date  [%thread] %-5level %logger [%ndc] - %message%newline" />
      </layout>
    </appender>
    <root>
      <level value="DEBUG" />
      <appender-ref ref="RollingFileAppender" />
    </root>
  </log4net>

</configuration>

第三方的代码如下:

LogManager.GetRepository(Assembly.GetCallingAssembly()), configFile);

LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);

我希望第三方 dll 使用我自己的配置文件中定义的附加程序。我该如何管理?

注意:

  • 第三方需要使用自己的配置文件,因为别人 部分是强制性的,我不能将它们添加到我的文件中
  • 我可以修改第三方配置文件,我不能修改我的

最佳答案

有两个现有问题提出了动态编辑 log4net 配置的解决方案:

关于c# - 从第三方重定向 log4net 日志,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30382042/

相关文章:

c# - Office VSTO 加载项可能的权限问题 - HRESULT 0x80004004 (E_ABORT)

c# - 如何更改嵌套 json 结构中的键值对 C#

c# - 即使没有 [Authorize] 属性也会调用 HandleAuthenticateAsync

c# - 配置 Microsoft.Owin.Logging.ILogger

.net - 使用 Log4Net 以编程方式强制创建新的日志文件

c# - 在 Windows 10 Fall Creators Update (1709) 之后,log4net 使用调用者位置信息变得非常慢

windows - Log4Net 与 WCF 作为服务运行

c# - 使用 Word 互操作查找具有特定格式的文本范围

c# - Log4net 配置在生产 doe azure web 服务中不起作用

c# - 由于授权无效,无法从服务帐户使用 GMail Api