程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> 關於.NET >> Log4net入門(控制台篇),log4net入門控制台

Log4net入門(控制台篇),log4net入門控制台

編輯:關於.NET

Log4net入門(控制台篇),log4net入門控制台


  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 }

  上述五個步驟完成,運行該控制台應用程序,即可看到在控制台窗口中輸出了日志信息,如下圖所示:

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

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved