DotNet Core Console 程序使用NLog
生活随笔
收集整理的這篇文章主要介紹了
DotNet Core Console 程序使用NLog
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
參考:https://github.com/NLog/NLog/wiki/Tutorial
步驟:
1. 使用Nuget安裝NLog.Extensions.Logging
?
Install-Package NLog.Extensions.Logging
?
2.編寫(xiě)代碼(到這步運(yùn)行代碼,不報(bào)錯(cuò),但是也不會(huì)有l(wèi)og輸出,因?yàn)闆](méi)有設(shè)置配置文件)
3. 編寫(xiě)配置文件
?? 在項(xiàng)目下新增加NLog.config 文件,并設(shè)置其能copy到運(yùn)行目錄。將一下內(nèi)容粘到里面,重新運(yùn)行程序就可以看到輸出到file.txt的log.
<?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"><targets><target name="logfile" xsi:type="File" fileName="file.txt" /></targets><rules><logger name="*" minlevel="Info" writeTo="logfile" /></rules> </nlog>
4. 增加輸出源,將Log輸出到屏幕上,按照以下內(nèi)容對(duì)配置文件做修改
<?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"><targets><target name="logfile" xsi:type="File" fileName="file.txt" /><target name="console" xsi:type="Console" /></targets><rules><logger name="*" minlevel="Info" writeTo="logfile" /><logger name="*" minlevel="Info" writeTo="console" /></rules> </nlog>
5.?如果想發(fā)送郵件,可以安裝NLog.MailKit
Install-Package NLog.MailKit
6.在配置文件中添加發(fā)送郵件的設(shè)置部分(參考https://github.com/nlog/NLog/wiki/Mail-target)
?
<?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"internalLogFile="d:\Nlog_log.txt" internalLogLevel="Error"><variable name="smtpServer" value="***"/><variable name="smtpUserName" value="***"/><variable name="smtpPassword" value="***"/><variable name="from" value="***"/><variable name="to" value="***"/><targets><target name="logfile" xsi:type="File" fileName="logs\${date:format=yyyyMMdd}_log.txt" layout="${date:format=yyyy-MM-dd HH\:mm\:ss} ${message}" /><target name="console" xsi:type="Console" layout="${date:format=yyyy-MM-dd HH\:mm\:ss} [${level}] ${message}"/><target name="infoMail" xsi:type="Mail"smtpServer="${smtpServer}"smtpUserName="${smtpUserName}"smtpPassword="${smtpPassword}"from="${from}"to="${to}"subject="info log"body="${message}"html="true"/><target name="errorMail" xsi:type="Mail"smtpServer="${smtpServer}"smtpUserName="${smtpUserName}"smtpPassword="${smtpPassword}"from="${from}"to="${to}"subject="error log"body="${message}"/></targets><rules><logger name="***" minlevel="Info" writeTo="infoMail" /><logger name="***" minlevel="Error" writeTo="logfile" /><logger name="Main" minlevel="Info" writeTo="console" /><logger name="Main" minlevel="Error" writeTo="errorMail" /></rules><extensions><add assembly="NLog.MailKit"/></extensions> </nlog>
?
轉(zhuǎn)載于:https://www.cnblogs.com/suidouya/p/7596840.html
總結(jié)
以上是生活随笔為你收集整理的DotNet Core Console 程序使用NLog的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 拔牙要多少钱啊?
- 下一篇: RAP Mock.js语法规范