如何在NLog.config文件中设置target
以在用户应用程序数据目录中创建日志文件?
以下是所需的文件位置。
C: \Users\userid\AppData\Local。。。\LogFile.txt
我尝试以以下方式设置fileName
,但没有成功。
-
target name="logfile" xsi:type="File" fileName="%APPDATA%/.../LogFile.txt"
-
target name="logfile" xsi:type="File" fileName="${APPDATA}/.../LogFile.txt"
-
target name="logfile" xsi:type="File" fileName="${%APPDATA%}/.../LogFile.txt"
您可以通过创建这样的目标来实现这一点:
<target name="logfile" xsi:type="File"
fileName="${specialfolder:folder=ApplicationData}/LogFile.txt"/>
文档可在此处找到。
我希望这能有所帮助。
接受的答案不会在AppData\Local目录中创建日志文件,而是在AppData\Roaming路径中创建日志。当OP要求在AppData\Local中创建日志文件时,您必须在specialfolder路径中使用LocalApplicationData。
<target name="logfile" xsi:type="File"
fileName="${specialfolder:folder=LocalApplicationData}/ApplicationLogs/LogFile.txt"/>
除了Jacco的答案之外,如果你想将日志与其他可能存储在appdata中的数据分开保存,你可以在路径中添加一个文件夹名称,比如:
fileName="${specialfolder:folder=ApplicationData}/Logs/LogFile.txt"/>