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的指定值。
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
相關文章
.NET中應用程序內共享UdpClient聯(lián)機的實現(xiàn)方法
本篇文章介紹了,.NET中應用程序內共享UdpClient聯(lián)機的實現(xiàn)方法。需要的朋友參考下2013-05-05
asp.net實現(xiàn)Postgresql快速寫入/讀取大量數據實例
本篇文章主要介紹了asp.net實現(xiàn)Postgresql快速寫入/讀取大量數據實例,具有一定的參考價值,有興趣的可以了解一下2017-07-07
asp.net下使用jQuery.AutoComplete完成仿淘寶商品搜索自動完成功能(改進了鍵盤上下選擇體驗)
其實這個已經是個比較常見的功能了,網上也有很多人做過這個了,但是很多都是僅僅做了一些基本的網頁上自動完成功能,沒有與具體的數據庫進行聯(lián)動,我今天所介紹這個自動完成的就是我修改的jQuery.AutoComplete+數據庫的一個解決方案。2010-05-05
[Asp.Net Core] 淺談Blazor Server Side
這篇文章主要介紹了[Asp.Net Core] Blazor Server Side 的相關資料,文中示例代碼非常詳細,幫助大家更好的理解和學習,感興趣的朋友可以了解下2020-07-07
.NET調用控制臺下生成的exe文件,傳參及獲取返回參數的思路及代碼
.NET調用控制臺下生成的exe文件,傳參及獲取返回參數的思路及代碼,需要的朋友可以參考一下2013-06-06
ASP.net(c#)用類的思想實現(xiàn)插入數據到ACCESS例子
ASP.net(c#)用類的思想實現(xiàn)插入數據到ACCESS例子...2007-07-07

