Log4net.config配置啟用常用方法匯總
在上文中,進行了簡單的log4配置搭建,也在實操中啟用了log4net的配置。這里做了一下總結。
方式一:
在運行時編程配置,代碼如下:
class Program
{
private readonly static ILog log = InitILog();
//private readonly static ILog log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
public static void Main(string[] args)
{
var gp=log4net.LogManager.GetRepository().Configured;
log.Debug("測試");
Console.ReadKey();
}
public static ILog InitILog()
{
var file = AppDomain.CurrentDomain.BaseDirectory + @"\Config\log4net.config";
FileInfo info = new FileInfo(file);
XmlConfigurator.Configure(info);
return LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
}
}
在方法InitLog中,通過獲取配置文件的路徑(配置文件路徑=應用程序基本目錄+程序集文件名+擴展名),使用FileInfo,Configure讀取配置文件內容,啟動log4net配置。
方式二:
assembly-level 配置屬性,看代碼:
[assembly: log4net.Config.XmlConfigurator(ConfigFile = "Config/log4net.config", Watch =true)]namespace SpringNetIOC
{
class Program
{
//private readonly static ILog log = InitILog();
private readonly static ILog log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
public static void Main(string[] args)
{
var gp=log4net.LogManager.GetRepository().Configured;
log.Debug("測試");
Console.ReadKey();
}
}
}
[assembly: log4net.Config.XmlConfigurator(ConfigFile = "Config/log4net.config", Watch =true)]也可以在Properties/AssemblyInfo.cs== 文件里添加,讓程序找到log4net.config文件。
需要說明一下XmlConfigurator可配置的三個屬性。
a。ConfigFile 配置文件名和路徑,包括擴展名,文件相對于程序的根目錄。注意,此屬性不可和ConfigFileExtension 屬性同時使用。
b。ConfigFileExtension;配置文件的后綴名,缺省默認時'config',此屬性不可和ConfigFile屬性公用。
關于ConfigFileExtension屬性,特此記錄一下,留待后面有了更深入的了解,再做回顧。
c。Watch(bool屬性),如果為true,log4net框架在運行時,監(jiān)視文件。如果配置文件被修改,則重新加載配置文件。
方式三:
app.config中的appSettings配置。看代碼:
<configuration>
<appSettings>
<add key="log4net.Config" value="Config/log4net.config"/>
<add key="log4net.Config.Watch" value="True"/>
</appSettings>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5" />
</startup>
</configuration>
key為lognet.Config會覆蓋assembly XmlConfigurator 配置 中 ConfigFile 指定的值,key為log4net.Config.Watch會覆蓋assembly XmlConfigurator配置中Watch的指定值。
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
相關文章
獲取創(chuàng)建Membership的數(shù)據庫創(chuàng)建腳本
membership的數(shù)據庫可以通過aspnet_regsql.exe來配置生成,但是里面的東西,不一定都是我需要的,有時我也想自定義一些東西。2010-02-02
asp.net開發(fā)與web標準的沖突問題的一些常見解決方法
Visual Studio .net從2003到現(xiàn)在的2008,一路走來慢慢強大……從以前的vs2003能自動改亂你的html代碼到現(xiàn)在在vs2008中都能直接對html代碼進行w3c標準驗證并提示了,非常不易。2009-02-02
基于localStorge開發(fā)登錄模塊的記住密碼與自動登錄實例
下面小編就為大家?guī)硪黄趌ocalStorge開發(fā)登錄模塊的記住密碼與自動登錄實例。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2017-08-08

