.net core winform 使用Nlog
折腾了好几次,自己网上找了很多关于log4net、Nlog的,试了很久,才弄好一个Nlog的,后续看下搞定log4net,再加上
调用代码
var logger = NLogBuilder.ConfigureNLog("nlog.config").GetCurrentClassLogger(); logger.Error("报错信息");
配置文件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" autoReload="true" internalLogLevel="info" internalLogFile="${basedir}\log\internal-nlog.log"> <!-- enable asp.net core and mongodb layout renderers --> <extensions> <add assembly="NLog.Web.AspNetCore"/> </extensions> <!--internal-nlog:NLog启动及加载config信息--> <!--nlog-all:所有日志记录信息--> <!--nlog-own:自定义日志记录信息--> <!-- the targets to write to --> <targets> <!-- write logs to file --> <target xsi:type="File" name="allfile" fileName="${basedir}\log\nlog-all-${shortdate}.log" layout="${longdate} >> [日志级别:${uppercase:${level}}]${newline}日志来源:${logger}${newline}日志信息:${message}${newline}错误信息:${exception:format=tostring}${newline}==============================================================${newline}" /> <target xsi:type="File" name="error" fileName="${basedir}\log\nlog-err-${shortdate}.log" layout="${longdate} >> [日志级别:${uppercase:${level}}]${newline}日志来源:${logger}${newline}日志信息:${message}${newline}错误信息:${exception:format=tostring}${newline}==============================================================${newline}" /> <target xsi:type="File" name="info" fileName="${basedir}\log\nlog-info-${shortdate}.log" layout="${longdate} >> [日志级别:${uppercase:${level}}]${newline}日志信息:${message}${newline}" /> </targets> <!-- rules to map from logger name to target --> <rules> <!--<logger name="*" minlevel="Trace" writeTo="allfile" />--> <logger name="*" level="Error" writeTo="error" /> <logger name="*" level="Info" writeTo="info" /> <!--Skip non-critical Microsoft logs and so log only own logs--> <logger name="Microsoft.*" maxLevel="Info" final="true" /> <!-- BlackHole without writeTo --> <!-- <logger name="*" minlevel="Trace" writeTo="ownFile-web" /> --> </rules> </nlog>