我正在尝试使用NLog
为我的应用程序设置日志记录。该应用程序与其他服务(如数据库)一起在 docker服务中运行。我不确定是否会造成任何问题,但是我在设置内部日志记录时对此表示怀疑,并且效果很好。我将NLog
设置为具有两个目标:控制台目标和文件目标。内部日志告诉我它从我指定的配置中加载了这两个目标。现在,奇怪的是,我得到了控制台输出,但是没有创建文件。
<?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="logs/internal-nlog.txt">
<!-- enable asp.net core layout renderers -->
<extensions>
<add assembly="NLog.Web.AspNetCore"></add>
</extensions>
<!-- the targets to write to -->
<targets>
<!-- console log -->
<target name="consolelog" xsi:type="Console"></target>
<target name="logfile" xsi:type="File" fileName="logs/${shortdate}-n.txt" Layout="${longdate}|${level:uppercase=true}|${logger}|${message}"></target>
</targets>
<!-- rules to map from logger name to target -->
<rules>
<!-- log everything from application namespace to console -->
<logger name="vote_server.*" minlevel="Trace" writeTo="consolelog"></logger>
<!-- log everything from application namespace to file -->
<logger name="vote_server.*" minlevel="Trace" writeTo="logfile"></logger>
</rules>
</nlog>