Log4Net日志的配置

时间:2023-03-08 16:56:18

<configuration>
  <configSections>
    <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net"/>
  </configSections>
 
  <log4net>
    <!--定义输出到文件中-->
        <appender name="RollingLogFileAppender" type="log4net.Appender.RollingFileAppender">
           <!--定义文件存放位置-->
           <file value="E:\PayBill\log"/>
           <appendToFile value="true"/>
           <rollingStyle value="Date"/>
           <datePattern value="yyyy\\yyyyMM\\yyyyMMdd'.txt'"/>
           <staticLogFileName value="false"/>
           <param name="MaxSizeRollBackups" value="100"/>
           <layout type="log4net.Layout.PatternLayout">
           <!--每条日志末尾的文字说明-->
           <!--输出格式-->
           <!--样例:2008-03-26 13:42:32,111 [10] INFO  Log4NetDemo.MainClass [(null)] - info-->
           <conversionPattern value="%newline %n记录时间:%date %n线程ID:[%thread] %n日志级别:  %-5level %n出错类:%logger property: [%property{NDC}] - %n错误描述:%message%newline %n"/>       
      </layout>    
    </appender>
         <root>
             <level value="ERROR"/>
             <!--文件形式记录日志-->
           <appender-ref ref="RollingLogFileAppender"/>
    
    </root>
  </log4net>
</configuration>

调用的方法 :

public static void Main(string[] args)
        {
            //第一种记录用法
            //(1)FormMain是类名称
            //(2)第二个参数是字符串信息
            LogHelper.WriteLog(typeof(Program), "测试Log4Net日志是否写入");

            //第二种记录用法
            //(1)FormMain是类名称
            //(2)第二个参数是需要捕捉的异常块
            //try {

            //}catch(Exception ex){

            //    LogHelper.WriteLog(typeof(FormMain), ex);

            //}        

        }

public static void WriteLog(Type t, Exception ex)
       {
           log4net.ILog log = log4net.LogManager.GetLogger(t);
           log.Error("Error", ex);
       }
       public static void WriteLog(Type t, string msg)
       {
           log4net.ILog log = log4net.LogManager.GetLogger(t);
           log.Error(msg);
       }