Log4net入门(控制台篇)

2018-06-23 23:44:03来源:未知 阅读 ()

新老客户大回馈,云服务器低至5折

  Log4net是Apache公司的log4j?的.NET版本,用于帮助.NET开发人员将日志信息输出到各种不同的输出源(Appender),常见的输出源包括控制台、日志文件和数据库等。本篇主要讨论如何在控制台应用程序中将日志文件输出到控制台、日志文件和SQL Server数据库中。

  使用log4net非常简单,只需要五个步骤即可完成,下面我们以控制台应用程序为例,说明如何使用log4net将日志输出到控制台中。

  我们首先演示最简单的例子,将日志信息输出到控制台,步骤如下:

1、我们首先创建一个控制台应用程序,取名为Log4netConsoleApplication,然后使用NuGet包管理器安装log4net,最新稳定版本为2.0.5,安装完毕后在项目的引用节点下会看到log4net程序集,说明安装成功。

2、在Log4netConsoleApplication应用程序中展开Properties节点,双击AssemblyInfo.cs文件,在该文件最后添加如下代码:

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

3、添加应用程序配置文件,并将其命名为Log4net.config(注意该文件名称与上一步骤中的ConfigFile的值一致),然后查看该文件的属性,将属性“复制到输出目录”的值设置为“始终复制”。

4、编辑Log4net.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     <!-- 将日志输出到控制台 -->
 9     <appender name="ConsoleAppender" type="log4net.Appender.ConsoleAppender">
10       <layout type="log4net.Layout.PatternLayout">
11         <conversionPattern value="%date [%thread] %-5level %logger - %message%newline" />
12       </layout>
13     </appender>
14     
15     <root>
16       <!-- 控制级别,由低到高:ALL|DEBUG|INFO|WARN|ERROR|FATAL|OFF -->
17       <!-- 比如定义级别为INFO,则INFO级别向下的级别,比如DEBUG日志将不会被记录 -->
18       <!-- 如果没有定义LEVEL的值,则缺省为DEBUG -->
19       <level value="ALL" />
20       <!-- 将日志输出到控制台 -->
21       <appender-ref ref="ConsoleAppender" />
22     </root>
23   </log4net>
24 </configuration>

5、双击打开项目中的Program.cs文件,保证文件中的代码如下所示:

 1 using System;
 2 using System.Collections.Generic;
 3 using System.Linq;
 4 using System.Text;
 5 using System.Threading.Tasks;
 6 
 7 namespace Log4netConsoleApplication
 8 {
 9     class Program
10     {
11         private static log4net.ILog log = log4net.LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
12         static void Main(string[] args)
13         {
14             log.Debug("debug");
15             log.Info("info");
16             log.Warn("warn");
17             log.Error("error");
18             log.Fatal("fatal");
19 
20             Console.ReadKey();
21         }
22     }
23 }

  上述五个步骤完成,运行该控制台应用程序,即可看到在控制台窗口中输出了日志信息,如下图所示:

  至此,如何将日志信息输出到控制台就完成了。

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:适用于jquery1.11.1的ajaxfileupload.js

下一篇:T-SQL 循环表的一种方式