修复了包含日期和时间的Nlog中的文件名

时间:2014-11-10 11:01:59

标签: filenames nlog

我希望能够将目标文件名设置为包含进程的开始时间和日期的固定名称,即使配置文件由于autoReload =&#34而更新;" true& #34;在nlog介绍中。

我尝试过以下操作,但在更改日志文件时会重新创建日志文件。

   <target
        name="file"
        xsi:type="File" 
        fileName="C:\Logs\${cached:cached=true:inner=${date:format=yyyyMMdd.HHmmss}}.${processid}.txt"
        layout="${time} ${level}: ${message}">
    </target>

有没有一种方法可以获得在过程期间基本上固定的时间和日期,无论配置文件更新多少次并将其合并到文件名中?

1 个答案:

答案 0 :(得分:0)

您可以{N_Log} pass a custom parameter,包含流程开始日期和时间。

GlobalDiagnosticsContext.Set("ProcessStart", yourDateVariable);
logger.Debug("Hello world!");

然后将其用作文件名的一部分。

${gdc:ProcessStart}