Log4Net配置

简介:

  Log4Net是用来记录日志,可以将程序运行过程中的信息输出到一些地方(文件、数据库、EventLog等),日志就是程序的黑匣子,可以通过日志查看系统的运行过程,从而发现系统的问题。

  日志的作用:将运行过程的步骤、成功失败记录下来,将关键性的数据记录下来分析系统问题所在。

演示:

第一步:官网下载类库

地址:http://logging.apache.org/log4net/download_log4net.cgi

也可以到我百度云盘下载:

链接:https://pan.baidu.com/s/1OOjRwz6K2_ImeTGCz9p-nQ
提取码:37re

第二步:程序引入第三方类库

Log4Net配置_第1张图片

第三步:配置app.config

 1 "1.0" encoding="utf-8"?>
 2 
 3   
 4     "logerror">
 5       "ERROR" />
 6       ref ref="ErrorAppender" />
 7     
 8     "loginfo">
 9       "INFO" />
10       ref ref="InfoAppender" />
11     
12     "ErrorAppender" type="log4net.Appender.RollingFileAppender">
13       "File" value="Log\\LogError\\" />
14       "AppendToFile" value="true" />
15       "MaxSizeRollBackups" value="100" />
16       "MaxFileSize" value="10240" />
17       "StaticLogFileName" value="false" />
18       "DatePattern" value="yyyyMMdd".txt"" />
19       "RollingStyle" value="Date" />
20       "log4net.Layout.PatternLayout">
21         "ConversionPattern" value="%n异常时间:%d %n异常级别:%-5p%n异常内容:%m%n" />
22       
23       
24     
25     "InfoAppender" type="log4net.Appender.RollingFileAppender">
26       "File" value="Log\\LogInfo\\" />
27       "AppendToFile" value="true" />
28       "MaxFileSize" value="10240" />
29       "MaxSizeRollBackups" value="100" />
30       "StaticLogFileName" value="false" />
31       "DatePattern" value="yyyyMMdd".txt"" />
32       "RollingStyle" value="Date" />
33       "log4net.Layout.PatternLayout">
34         "ConversionPattern" value="日志时间:%d %n日志级别:%-5p  %n日志内容:%m%n%n" />
35       
36     
37   
38 

第四步:在AssemblyInfo.cs 注册config

Log4Net配置_第2张图片

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

第五步:日志文件帮助类

 1 using System;
 2 using System.Collections.Generic;
 3 using System.IO;
 4 using System.Linq;
 5 using System.Text;
 6 using System.Threading.Tasks;
 7 
 8 namespace Log4NetDemo
 9 {
10     public class LogHelper
11     {
12         private LogHelper()
13         {
14 
15         }
16 
17         public static readonly log4net.ILog loginfo = log4net.LogManager.GetLogger("loginfo");
18 
19         public static readonly log4net.ILog logerror = log4net.LogManager.GetLogger("logerror");
20 
21         public static void SetConfig()
22         {
23             log4net.Config.XmlConfigurator.Configure();
24         }
25 
26         public static void SetConfig(FileInfo configFile)
27         {
28             log4net.Config.XmlConfigurator.Configure(configFile);
29         }
30 
31         public static void WriteLog(string info)
32         {
33             if (loginfo.IsInfoEnabled)
34             {
35                 loginfo.Info(info);
36             }
37         }
38 
39         public static void WriteLog(string info, Exception se)
40         {
41             if (logerror.IsErrorEnabled)
42             {
43                 logerror.Error(info, se);
44             }
45         }
46     }
47 }

第六步:执行

Log4Net配置_第3张图片

 1 using System;
 2 using System.Windows.Forms;
 3 
 4 namespace Log4NetDemo
 5 {
 6     public partial class Form1 : Form
 7     {
 8         public Form1()
 9         {
10             InitializeComponent();
11         }
12 
13         private void button1_Click(object sender, EventArgs e)
14         {
15             try
16             {
17                 LogHelper.WriteLog("正常日志记录!");
18                 int a = Convert.ToInt32("b");
19             }
20             catch (Exception ex)
21             {
22                 LogHelper.WriteLog("错误日志记录!", ex);
23                 MessageBox.Show("ok");
24             }
25         }
26     }
27 }

 效果

Log4Net配置_第4张图片

项目:

链接:https://pan.baidu.com/s/1WFJbbDudHuXYWYydIjowAA
提取码:4pzq 

你可能感兴趣的:(Log4Net配置)