NLog的使用
1、在Nuget上安装NLog
2、新建NLog.config文件
<?xml version="1.0" encoding="utf-8" ?> <nlog xmlns="http://www.nlog-project.org/schemas/NLog.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.nlog-project.org/schemas/NLog.xsd NLog.xsd" autoReload="true" throwExceptions="false" internalLogLevel="Off" internalLogFile="c:\temp\nlog-internal.log"> <!-- optional, add some variables https://github.com/nlog/NLog/wiki/Configuration-file#variables --> <!-- <variable name="myvar" value="myvalue"/> --> <variable name="fileFormat" value=" ${newline}date: ${date} ${newline}level: ${level} ${newline}logger: ${logger} ${newline}machinename: ${machinename} ${newline}message: ${message} ${newline}appdomain: ${appdomain} ${newline}assembly-version: ${assembly-version} ${newline}basedir: ${basedir} ${newline}callsite: ${callsite} ${newline}counter: ${counter} ${newline}nlogdir: ${nlogdir} ${newline}processid: ${processid} ${newline}processname: ${processname} ${newline}specialfolder: ${specialfolder} ${newline}stacktrace: ${stacktrace} ${newline}------------------------------------------------------------" /> <!-- See https://github.com/nlog/nlog/wiki/Configuration-file for information on customizing logging rules and outputs. --> <targets> <!-- add your targets here See https://github.com/nlog/NLog/wiki/Targets for possible targets. See https://github.com/nlog/NLog/wiki/Layout-Renderers for the possible layout renderers. --> <!-- Write events to a file with the date in the filename. <target xsi:type="File" name="f" fileName="${basedir}/logs/${shortdate}.log" layout="${longdate} ${uppercase:${level}} ${message}" /> --> <target name="file" xsi:type="File" fileName="${basedir}/Logs/${date:format=yyyy-MM}/${shortdate}.log" layout="${fileFormat}" maxArchiveFiles="5" archiveAboveSize="10240" /> </targets> <rules> <!-- add your logging rules here --> <!-- Write all events with minimal level of Debug (So Debug, Info, Warn, Error and Fatal, but not Trace) to "f" <logger name="*" minlevel="Debug" writeTo="f" /> --> <!-- Level Example Fatal Highest level: important stuff down Error For example application crashes / exceptions. Warn Incorrect behavior but the application can continue Info Normal behavior like mail sent, user updated profile etc. Debug Executed queries, user authenticated, session expired Trace Begin method X, end method X etc --> <!-- Logging 水平分为以下等级“Trace<<Debug<<Info<<Warn<<Error<<Fatal ”,如果我们选择Info值,则Trace和Debug等级的信息不会被输出。 --> <logger name="*" minlevel="Trace" writeTo="file"/> </rules> </nlog>
3、建立Log类
public sealed class Log { private static NLog.Logger _logger = NLog.LogManager.GetCurrentClassLogger(); private Log() { } public static void Trace(string strMsg) { _logger.Trace(strMsg); } public static void Debug(string strMsg) { _logger.Debug(strMsg); } public static void Info(string strMsg) { _logger.Info(strMsg); } public static void Warn(string strMsg) { _logger.Warn(strMsg); } public static void Error(string strMsg) { _logger.Error(strMsg); } public static void Fatal(string strMsg) { _logger.Fatal(strMsg); } }
4、将NLog属性修改为始终复制
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利
如有需要可联系(qq:2831804923 / 微信号:wh0612910)
----------------------------------------------------------------------------------------------------------------------
愿本文对阁下有帮助,在下谢之:
如有需要可联系(qq:2831804923 / 微信号:wh0612910)
----------------------------------------------------------------------------------------------------------------------
愿本文对阁下有帮助,在下谢之: