C# log4net使用案例詳解
這邊先介紹簡(jiǎn)單的使用:在控制臺(tái)輸出和寫(xiě)入文件
首先添加log4net的nuget包
然后在app.config中添加配置項(xiàng)==configSections只能有一個(gè),且是configuration的首個(gè)節(jié)點(diǎn)
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<configSections>
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net" />
</configSections>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5.2" />
</startup>
<log4net>
<root>
<level value="WARN" />
<appender-ref ref="LogFileAppender" />
<appender-ref ref="ConsoleAppender" />
</root>
<logger name="testApp.Logging">
<level value="DEBUG"/>
</logger>
<appender name="LogFileAppender" type="log4net.Appender.FileAppender" >
<param name="File" value="log_file.txt" />
<!--<param name="File" value="D:/log_file.txt" />-->
<param name="AppendToFile" value="true" />
<layout type="log4net.Layout.PatternLayout">
<!--<param name="Header" value="[Header] "/>
<param name="Footer" value="[Footer] "/>-->
<param name="ConversionPattern" value="%d [%t] %-5p %c - %m%n" />
</layout>
<filter type="log4net.Filter.LevelRangeFilter">
<param name="LevelMin" value="DEBUG" />
<param name="LevelMax" value="WARN" />
</filter>
</appender>
<appender name="ConsoleAppender" type="log4net.Appender.ConsoleAppender" >
<layout type="log4net.Layout.PatternLayout">
<param name="ConversionPattern" value="%d [%t] %-5p %c - %m%n" />
</layout>
</appender>
</log4net>
</configuration>
這部分代碼也可以單獨(dú)放在一個(gè)配置文件中,起名log4net.config,我們把這個(gè)文件和app.config放在同一層
接著在AssemblyInfo.cs下添加特性
//配置文件在app.config中 [assembly: log4net.Config.XmlConfigurator(Watch = true)] //配置文件在log4net.config中 //[assembly: log4net.Config.XmlConfigurator(ConfigFile="log4net.config", Watch = true)]
static void Main(string[] args)
{
log4net.ILog log = log4net.LogManager.GetLogger("testApp.Logging");//獲取一個(gè)日志記錄器
//配置文件在app.config中
log4net.Config.XmlConfigurator.Configure();
//配置文件在log4net.config中
//string assemblyFilePath = Assembly.GetExecutingAssembly().Location;
//string assemblyDirPath = Path.GetDirectoryName(assemblyFilePath);
//DirectoryInfo pathInfo = new DirectoryInfo(assemblyDirPath);
//string configFilePath = pathInfo.Parent.Parent.FullName + "http://log4net.config";
//log4net.Config.XmlConfigurator.ConfigureAndWatch(new FileInfo(configFilePath));
//絕對(duì)路徑
//log4net.Config.XmlConfigurator.Configure(newSystem.IO.FileInfo(@"E:/DEMO/Log4NetDemo/emoTest/log4net.config"));
Thread.CurrentThread.Name = "main";
log.Debug("初始化連接開(kāi)始");
log.Warn("測(cè)試");
log.Info(DateTime.Now.ToString() + ": login success");
Console.ReadKey();
}
到此這篇關(guān)于C# log4net使用案例詳解的文章就介紹到這了,更多相關(guān)Java log4net使用內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Java基礎(chǔ)之finally語(yǔ)句與return語(yǔ)句詳解
這篇文章主要介紹了Java基礎(chǔ)之finally語(yǔ)句與return語(yǔ)句詳解,文中有非常詳細(xì)的代碼示例,對(duì)正在學(xué)習(xí)java基礎(chǔ)的小伙伴們有非常好的幫助,需要的朋友可以參考下2021-04-04
詳解關(guān)于eclipse中使用jdk15對(duì)應(yīng)javafx15的配置問(wèn)題總結(jié)
這篇文章主要介紹了詳解關(guān)于eclipse中使用jdk15對(duì)應(yīng)javafx15的配置問(wèn)題總結(jié),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-11-11
關(guān)于Java項(xiàng)目讀取resources資源文件路徑的那點(diǎn)事
這篇文章主要介紹了關(guān)于Java項(xiàng)目讀取resources資源文件路徑的那點(diǎn)事,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-07-07
HotSpot的Java對(duì)象模型之Oop-Klass模型詳解
這篇文章主要介紹了HotSpot的Java對(duì)象模型之Oop-Klass模型詳解,在JVM層面,不僅Java類(lèi)是對(duì)象,Java 方法也是對(duì)象, 字節(jié)碼常量池也是對(duì)象,一切皆是對(duì)象,JVM使用不同的oop-klass模型來(lái)表示各種不同的對(duì)象,需要的朋友可以參考下2023-08-08
劍指Offer之Java算法習(xí)題精講鏈表與數(shù)組專(zhuān)項(xiàng)訓(xùn)練
跟著思路走,之后從簡(jiǎn)單題入手,反復(fù)去看,做過(guò)之后可能會(huì)忘記,之后再做一次,記不住就反復(fù)做,反復(fù)尋求思路和規(guī)律,慢慢積累就會(huì)發(fā)現(xiàn)質(zhì)的變化2022-03-03
詳解SpringMVC中的四種跳轉(zhuǎn)方式、視圖解析器問(wèn)題
這篇文章主要介紹了SpringMVC的四種跳轉(zhuǎn)方式、視圖解析器,springmvc核心配置文件和視圖解析器的使用,添加視圖解析器,通過(guò)案例講解四種跳轉(zhuǎn)方式,需要的朋友可以參考下2022-10-10

