.net下log4net使用方法詳解
本文實(shí)例為大家分享了.net下log4net的使用方法,供大家參考,具體內(nèi)容如下
這里以控制臺(tái)應(yīng)用程序?yàn)槔?/p>
首先是要添加引用:


安裝后可以看到項(xiàng)目中多了log4net的引用:

添加應(yīng)用程序配置文件app.config,配置log4net
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<configSections>
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net"/>
</configSections>
<log4net>
<!-- Define some output appenders -->
<appender name="RollingLogFileAppender" type="log4net.Appender.RollingFileAppender">
<!--日志路徑-->
<file value="test.txt"/>
<!--是否向文件中追加日志-->
<appendToFile value="true"/>
<!--日志保留天數(shù)-->
<maxSizeRollBackups value="10"/>
<!--每個(gè)文件的大小。只在混合方式與文件大小方式下使用。超出大小后在所有文件名后自動(dòng)增加正整數(shù)重新命名,數(shù)字最大的最早寫入??捎玫膯挝?KB|MB|GB。不要使用小數(shù),否則會(huì)一直寫入當(dāng)前日志-->
<maximumFileSize value="1024KB"/>
<!--按照何種方式產(chǎn)生多個(gè)日志文件(日期[Date],文件大小[Size],混合[Composite])-->
<rollingStyle value="Size"/>
<!--否只寫到一個(gè)文件中-->
<staticLogFileName value="true"/>
<layout type="log4net.Layout.PatternLayout">
<!--記錄時(shí)間:%date 線程ID:[%thread] 日志級(jí)別:%-5level 記錄類:%logger 操作者ID:%property{Operator} 操作類型:%property{Action}%n 當(dāng)前機(jī)器名:%property%n當(dāng)前機(jī)器名及登錄用戶:%username %n 記錄位置:%location%n 消息描述:%property{Message}%n 異常:%exception%n 消息:%message%newline%n%n-->
<conversionPattern value="%date [%thread] %-5level %logger - %message%newline"/>
</layout>
</appender>
<root>
<level value="DEBUG"/>
<appender-ref ref="RollingLogFileAppender"/>
</root>
</log4net>
</configuration>
在Program.cs中添加代碼:
static void Main(string[] args)
{
log4net.Config.XmlConfigurator.Configure();
//創(chuàng)建日志記錄組件實(shí)例
ILog log = log4net.LogManager.GetLogger(typeof(Program));
//記錄錯(cuò)誤日志
log.Error("發(fā)生了錯(cuò)誤:", new Exception("log4net的測(cè)試錯(cuò)誤信息"));
//記錄致命的錯(cuò)誤
log.Fatal("發(fā)生了致命的錯(cuò)誤:", new Exception("log4net測(cè)試致命信息"));
//記錄一般信息
log.Info("log4net的一般信息");
//記錄調(diào)試信息
log.Debug("log4net的調(diào)試信息");
//記錄警告信息
log.Warn("log4net警告信息");
Console.WriteLine("ok");
Console.ReadKey();
}
運(yùn)行程序

這里是控制臺(tái)應(yīng)用程序 ,如果是Web應(yīng)用程序,可以在Global.asax.cs中Application_Start方法中調(diào)用log4net.Config.XmlConfigurator.Configure(); 在Global.asax.cs中定義一個(gè)變量,并在Application_Error中獲取異常并記錄:
public class Global : System.Web.HttpApplication
{
private static ILog log = LogManager.GetLogger(typeof(Global));
protected void Application_Start(object sender, EventArgs e)
{
log4net.Config.XmlConfigurator.Configure();
}
protected void Session_Start(object sender, EventArgs e)
{
}
protected void Application_BeginRequest(object sender, EventArgs e)
{
}
protected void Application_AuthenticateRequest(object sender, EventArgs e)
{
}
protected void Application_Error(object sender, EventArgs e)
{
log.Error("發(fā)生了異常",Server.GetLastError());
}
protected void Session_End(object sender, EventArgs e)
{
}
protected void Application_End(object sender, EventArgs e)
{
}
}
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
asp.net簡(jiǎn)單實(shí)現(xiàn)頁(yè)面換膚的方法
這篇文章主要介紹了asp.net簡(jiǎn)單實(shí)現(xiàn)頁(yè)面換膚的方法,可實(shí)現(xiàn)給頁(yè)面動(dòng)態(tài)添加樣式的功能,非常簡(jiǎn)單實(shí)用,需要的朋友可以參考下2015-12-12
.net實(shí)現(xiàn)oracle數(shù)據(jù)庫(kù)中獲取新插入數(shù)據(jù)的id的方法
在oracle數(shù)據(jù)庫(kù)中實(shí)現(xiàn)插入數(shù)據(jù)的自動(dòng)增長(zhǎng)不是很容易,想在.net中實(shí)現(xiàn)獲取新插入數(shù)據(jù)的id,感興趣的朋友看下詳細(xì)的解決方法,希望對(duì)你有所幫助2013-04-04
.net數(shù)據(jù)庫(kù)連接池配置技巧(默認(rèn)值)
ado.net 本就有連接功能,所有.net開(kāi)法基本不用去考慮連接問(wèn)題,怪不得.net的連接池資料網(wǎng)上找不到。.net連接池只要在連接字符串里配制就可以了2008-12-12
.NET Core 1.0創(chuàng)建Self-Contained控制臺(tái)應(yīng)用
這篇文章主要為大家詳細(xì)介紹了.NET Core 1.0創(chuàng)建Self-Contained控制臺(tái)應(yīng)用的相關(guān)資料,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-04-04
WPF實(shí)現(xiàn)定時(shí)刷新UI界面功能
這篇文章主要為大家詳細(xì)介紹了WPF實(shí)現(xiàn)定時(shí)刷新UI界面功能,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-07-07
asp.net中實(shí)體類對(duì)象賦值到表單的實(shí)現(xiàn)代碼
昨天在網(wǎng)上看到了一個(gè)利用反射表單賦值到實(shí)體類對(duì)象的一個(gè)方法,自己就在加了個(gè)方法,從實(shí)體對(duì)象到表單,覺(jué)的很不錯(cuò)非常省事,所以把他寫成了一個(gè)類,供以后使用2010-11-11
.net中如何以純二進(jìn)制的形式在內(nèi)存中繪制一個(gè)對(duì)象
這篇文章主要介紹了如何以純二進(jìn)制的形式在內(nèi)存中繪制一個(gè)對(duì)象,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2023-07-07

