• 使用log4net


    原文:《使用log4net,没有日志文件生成》 Posted on 2014/06/12

    ================================================================================

    log4net主页:Apache log4net: Home

    上周刚学习了下用法,参考Apache log4net Manual: Configuration一步步配置下来,运行正常。

    然后我把配置写到app.config中,并把.exe和需要的.dll拷到其他目录中,一运行发现没有日志文件生成。今天重新看了一遍Apache log4net Manual: Configuration,突然发现工程编译后还产生了一个.exe.config的文件。里面就是原先app.config中的内容,连同该文件一同拷贝到另外目录就可以正常运行了。

    配置如下:

    AssemblyInfo.cs:

    [assembly: log4net.Config.XmlConfigurator(Watch=true)]

    App.config:

     1 <?xml version="1.0" encoding="utf-8" ?>
     2 <configuration>
     3     <configSections>
     4         <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler,log4net" />
     5     </configSections>
     6 
     7     <log4net>
     8         <appender name="Console" type="log4net.Appender.ConsoleAppender">
     9             <layout type="log4net.Layout.PatternLayout">
    10                 <conversionPattern value="%5level [%thread] (%file:%line) - %message%newline" />
    11             </layout>
    12         </appender>
    13         <appender name="RollingFile" type="log4net.Appender.RollingFileAppender">
    14             <file value="example.log" />
    15             <appendToFile value="true" />
    16             <maximumFileSize value="100KB" />
    17             <maxSizeRollBackups value="2" />
    18             <layout type="log4net.Layout.PatternLayout">
    19                 <conversionPattern value="%level %thread %logger - %message%newline" />
    20             </layout>
    21         </appender>
    22         <root>
    23             <level value="DEBUG" />
    24             <appender-ref ref="Console" />
    25             <appender-ref ref="RollingFile" />
    26         </root>
    27     </log4net>
    28 </configuration>

    Program.cs

     1 using log4net;
     2 using log4net.Config;
     3 
     4 namespace ConsoleApplication5
     5 {
     6     class MyApp
     7     {
     8         private static readonly ILog log = LogManager.GetLogger(typeof(MyApp));
     9 
    10         static void Main(string[] args)
    11         {
    12             //BasicConfigurator.Configure();
    13             //XmlConfigurator.Configure();
    14 
    15             log.Info("Entering application.");
    16         }
    17     }
    18 }

    ===================================================================

    Update: 2014-10-22

    配置RollingFileAppender:根据设置的文件大小最大值Roll,限制所有日志文件总大小。

    如下,追加到文件尾、所有日志文件总大小限制为1GB = (RollBackup文件数最大值15 + 在工作状态的日志文件)*64MB;

    <appender name="RollingFile" type="log4net.Appender.RollingFileAppender">
        <appendToFile value="true" />
        <maximumFileSize value="64MB" />
        <maxSizeRollBackups value="15" />
        <rollingStyle value="Size"/>
        ...
    </appender>

    RollingFileAppender.RollingStyle

    【END】

  • 相关阅读:
    Centos-706防火墙端口操作
    Centos-7.6安装DotnetCore3.1
    Centos-610-源码安装GIT
    Centos-610-安装Jenkins2.222.4
    Centos610-安装NodeJs
    Windows:开发环境Word,PPT,EXCEL com+组件配置
    DCom配置我的电脑有个红色向下的箭头
    NPM包管理工具NRM
    Win10-Jvm调优之工具基本配置、使用(二)
    Win10-Jvm调优之工具基本配置、使用(一)
  • 原文地址:https://www.cnblogs.com/submarinex/p/3967829.html
Copyright © 2020-2023  润新知