我正在尝试使用 NLog 4.4.12
记录一些应用程序信息,但我似乎无法在我的 C 驱动器
中创建日志文件。
我有一个运行在 .net 4.6.1
上的类库
我在该项目的根目录中创建了一个 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">
<targets>
<target name="logfile" xsi:type="File" fileName="c:\ApiLogfile.txt" />
</targets>
<rules>
<logger name="*" minlevel="Info" writeTo="logfile" />
</rules>
</nlog>
当我调用 logger.Info("NLog to the rescue")
时,输出文件未在 C 驱动器中创建。我在这里遗漏了什么吗?
最佳答案
我无法使用
<target name="logfile" xsi:type="File" fileName="c:\ApiLogfile.txt" />
这可能是一个权限问题,如果您以管理员身份执行该应用程序,它确实有效。
这两个位置对我有用:
<target name="logfile" xsi:type="File" fileName="${basedir}/ApiLogfile.txt" />
<target name="logfile" xsi:type="File" fileName="C:\Users\{username}\Documents\ApiLogfile.txt" />
还要确保将 NLog.config 文件的复制到输出目录设置为始终复制,以确保它被复制到输出目录,这是 NLog 程序集所在的目录期望它是。
关于c# - asp.net 4.6.1 无法使用 NLog 创建日志文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47782868/