Loading

winfrom Log4Net 代码(二) 记录格式log_info.txt和log_error.txt,只产生两个文本,里面分别记录提示信息和报错信息

1.配置信息

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

 

或者

[assembly: log4net.Config.XmlConfigurator(ConfigFile = @"log4net.config", Watch = true)]

2.配置Log4Net.config

 1 <?xml version="1.0" encoding="utf-8" ?>
 2 <configuration>
 3     <configSections>
 4         <section name="log4net" type="System.Configuration.IgnoreSectionHandler" />
 5     </configSections>
 6   <!--log4net配置文件-->
 7   <log4net>
 8     <root>
 9       <level value="ALL"/>
10       <appender-ref ref="InfoAppender"/>
11       <appender-ref ref="ErrorAppender"/>
12       <!--<appender-ref ref="ConsoleAppender"/>-->
13     </root>
14     <!--运行状态信息-->
15     <appender name="InfoAppender" type="log4net.Appender.RollingFileAppender">
16       <!--日志路径-->
17       <File value="log/log_info.txt"/>
18       <!--是否是向文件中追加日志-->
19       <AppendToFile value="true"/>
20       <!--创建新文件的方式-->
21       <RollingStyle value="Size"/>
22       <!--log文件大小-->
23       <MaximumFileSize value="5M"/>
24       <!--备份日志数目-->
25       <MaxSizeRollBackups value="30"/>
26       <!--日志文件名是否是固定不变的-->
27       <StaticLogFileName value="true"/>
28       <lockingModel type="log4net.Appender.RollingFileAppender+MinimalLock" />
29       <!--输出格式-->
30       <layout type="log4net.Layout.PatternLayout">
31         <!--日期 [级别]-->
32         <conversionPattern value="%d [%-5p] [%t%] -%m%n"/>
33       </layout>
34       <!--控制器,只记录级别在INFO-INFO之间的信息-->
35       <filter type="log4net.Filter.LevelRangeFilter">
36         <levelMin value="INFO" />
37         <levelMax value="INFO" />
38       </filter>
39     </appender>
40     <!--运行错误信息-->
41     <appender name="ErrorAppender" type="log4net.Appender.RollingFileAppender">
42       <!--日志路径-->
43       <File value="log/log_error.txt"/>
44       <!--是否是向文件中追加日志-->
45       <AppendToFile value="true"/>
46       <!--创建新文件的方式-->
47       <RollingStyle value="Size"/>
48       <!--log文件大小-->
49       <MaximumFileSize value="5M"/>
50       <!--备份日志数目-->
51       <MaxSizeRollBackups value="30"/>
52       <!--日志文件名是否是固定不变的-->
53       <StaticLogFileName value="true"/>
54       <lockingModel type="log4net.Appender.RollingFileAppender+MinimalLock" />
55       <!--输出格式-->
56       <layout type="log4net.Layout.PatternLayout">
57         <!--输出格式-->
58         <conversionPattern value="%d [%-5p] [%t%] -%m%n"/>
59       </layout>
60       <!--控制器,只记录级别在WARN-FATAL之间的信息-->
61       <filter type="log4net.Filter.LevelRangeFilter">
62         <levelMin value="WARN" />
63         <levelMax value="FATAL" />
64       </filter>
65     </appender>
66   </log4net>
67 </configuration>

3.  LogHelper.cs

 1 using System;
 2 using System.Collections.Generic;
 3 using System.Linq;
 4 using System.Text;
 5 
 6 namespace WHC.Framework.Starter
 7 {
 8     public class LogHelper
 9     {
10         private static log4net.ILog log = log4net.LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
11 
12         /// <summary>  
13         /// 程序运行的过程中的,一般信息可以调用此方法记录日记  
14         /// </summary>  
15         /// <param name="info"></param>  
16         public static void Info(string info)
17         {
18             if (log.IsInfoEnabled)
19                 log.Info(info);
20         }
21 
22         /// <summary>  
23         /// 程序出现错误的时候调用此方法记录日记(一般用在出现了异常以后)  
24         /// </summary>  
25         /// <param name="info"></param>  
26         public static void Error(string info)
27         {
28             if (log.IsErrorEnabled)
29                 log.Error(info);
30         }
31 
32         /// <summary>  
33         ///  程序出现错误的时候调用此方法记录日记(一般用在出现了异常以后)  
34         /// </summary>  
35         /// <param name="info"></param>  
36         /// <param name="ex"></param>  
37         public static void Error(string info, Exception ex)
38         {
39             if (log.IsErrorEnabled)
40                 log.Error(info, ex);
41         }
42 
43         /// <summary>  
44         ///  程序出现错误的时候调用此方法记录日记(一般用在出现了异常以后)  
45         /// </summary>  
46         /// <param name="ex"></param>  
47         public static void Error(Exception ex)
48         {
49             if (log.IsErrorEnabled)
50                 log.Error(ex);
51         }
52 
53         //private static string SubMsg(string msg)
54         //{
55         //    if (msg.Length > 100)
56         //        msg = msg.Substring(0, 100);
57 
58         //    return msg;
59         //}
60     }
61 }

 

posted @ 2020-09-30 10:33  云辰  阅读(314)  评论(0编辑  收藏  举报