1、新建NLog配置文件,名称分别为nlog.config和nlog.debug.config
<?xml version="1.0"?> <nlog xmlns="http://www.nlog-project.org/schemas/NLog.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" autoReload="true" internalLogLevel="Warn" internalLogFile="${basedir}\logs\internal-nlog.txt"> <extensions> <add assembly="NLog.Web.AspNetCore"/> </extensions> <targets> <target name="allfile" xsi:type="File" fileName="${basedir}\logs\GDStationaryNetCore\${shortdate}.log" encoding="utf-8" layout="[${longdate}][${machinename}][${level}] ${message} ${exception}" /> </targets> <rules> <!--All logs,including from Microsoft--> <logger name="*" minlevel="Trace" writeTo="allfile" /> <!--Skip Microsoft logs and so log only own logs--> <logger name="Microsoft.*" minlevel="Trace" writeTo="blackhole" final="true" /> <logger name="*" minlevel="Trace" writeTo="ownFile-web" /> </rules> </nlog>
另一份配置文件与上面一样,修改保存日志的目录为其他目录
2、在Startup里的Configure方法里配置,并根据环境配置NLog配置文件
//根据环境变量切换NLog配置 var environment = Environment.GetEnvironmentVariable("ASPNETCORE_ENVIRONMENT"); var isProd = environment == EnvironmentName.Production; env.ConfigureNLog(isProd ? "nlog.config" : "nlog.debug.config");
可在工程的属性 调试里修改环境变量
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。