Log4net.config配置啟用常用方法匯總
在上文中,進(jìn)行了簡單的log4配置搭建,也在實操中啟用了log4net的配置。這里做了一下總結(jié)。
方式一:
在運(yùn)行時編程配置,代碼如下:
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中,通過獲取配置文件的路徑(配置文件路徑=應(yīng)用程序基本目錄+程序集文件名+擴(kuò)展名),使用FileInfo,Configure讀取配置文件內(nèi)容,啟動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 配置文件名和路徑,包括擴(kuò)展名,文件相對于程序的根目錄。注意,此屬性不可和ConfigFileExtension 屬性同時使用。
b。ConfigFileExtension;配置文件的后綴名,缺省默認(rèn)時'config',此屬性不可和ConfigFile屬性公用。
關(guān)于ConfigFileExtension屬性,特此記錄一下,留待后面有了更深入的了解,再做回顧。
c。Watch(bool屬性),如果為true,log4net框架在運(yùn)行時,監(jiān)視文件。如果配置文件被修改,則重新加載配置文件。
方式三:
app.config中的appSettings配置??创a:
<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的指定值。
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
.NET中應(yīng)用程序內(nèi)共享UdpClient聯(lián)機(jī)的實現(xiàn)方法
本篇文章介紹了,.NET中應(yīng)用程序內(nèi)共享UdpClient聯(lián)機(jī)的實現(xiàn)方法。需要的朋友參考下2013-05-05
asp.net實現(xiàn)Postgresql快速寫入/讀取大量數(shù)據(jù)實例
本篇文章主要介紹了asp.net實現(xiàn)Postgresql快速寫入/讀取大量數(shù)據(jù)實例,具有一定的參考價值,有興趣的可以了解一下2017-07-07
asp.net下使用jQuery.AutoComplete完成仿淘寶商品搜索自動完成功能(改進(jìn)了鍵盤上下選擇體驗)
其實這個已經(jīng)是個比較常見的功能了,網(wǎng)上也有很多人做過這個了,但是很多都是僅僅做了一些基本的網(wǎng)頁上自動完成功能,沒有與具體的數(shù)據(jù)庫進(jìn)行聯(lián)動,我今天所介紹這個自動完成的就是我修改的jQuery.AutoComplete+數(shù)據(jù)庫的一個解決方案。2010-05-05
[Asp.Net Core] 淺談Blazor Server Side
這篇文章主要介紹了[Asp.Net Core] Blazor Server Side 的相關(guān)資料,文中示例代碼非常詳細(xì),幫助大家更好的理解和學(xué)習(xí),感興趣的朋友可以了解下2020-07-07
.NET調(diào)用控制臺下生成的exe文件,傳參及獲取返回參數(shù)的思路及代碼
.NET調(diào)用控制臺下生成的exe文件,傳參及獲取返回參數(shù)的思路及代碼,需要的朋友可以參考一下2013-06-06
ASP.net(c#)用類的思想實現(xiàn)插入數(shù)據(jù)到ACCESS例子
ASP.net(c#)用類的思想實現(xiàn)插入數(shù)據(jù)到ACCESS例子...2007-07-07

