繁体   English   中英

如何从log4net为.NET Standard 2.0类库设置FileAppender记录器?

[英]How do I setup a FileAppender logger from log4net for a .NET Standard 2.0 class library?

如何使用.NET Standard 2.0从log4net为类库设置File Appender记录器? 我没有AssemblyInfo.cs。 我认为我有一个基本的误解,这导致我对此感到困惑,所以这可能是一个简单的答案,但是我刚刚启动了一个类库,希望在我们的解决方案中尽可能多地访问该类库,并从开始。

任何和所有建议/帮助深表感谢。

AssemblyInfo.cs文件没有什么特别的。 可以将log4net的配置属性放在程序集中的任何文件中。

话虽如此,我建议您不要直接使用log4net,而应使用NuGet包Microsoft.Extensions.Logging.AbstractionsILogger 这使您的库的使用者可以使用他们想要的任何日志系统,而不必仅使用log4net。

不知道我是否了解您需要/想要的内容,但这是一个有关配置文件外观的想法

   <log4net>
    <root>
      <level value="INFO" />
      <appender-ref ref="LogFileAppender" />
    </root>
    <appender name="LogFileAppender" type="log4net.Appender.RollingFileAppender">
      <param name="File" value="test.txt" />
      <param name="AppendToFile" value="true" />
      <rollingStyle value="Size" />
      <maxSizeRollBackups value="10" />
      <maximumFileSize value="5MB" />
      <staticLogFileName value="true" />
      <layout type="log4net.Layout.PatternLayout">
        <param name="ConversionPattern" value="%date [%thread] %-5level %logger [%M %C] - %message%newline" />
      </layout>
  </log4net>

如果我没记错的话,您不需要在Assemblyinfo中添加任何内容(如果您没有),但是您需要在启动时添加类似的内容

        log4net.Config.XmlConfigurator.Configure();

(在我的情况下是webapi,因此我将其添加到了startup.cs中)

我希望这有帮助!

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM