Nlog動態修改日誌儲存地址
阿新 • • 發佈:2021-07-14
2021年6月左右版本,實測有效
1、配置檔案
變數logDirectory代表日誌儲存地址
<targets async="true"> <target name="csv" xsi:type="File" fileName="${gdc:item=logDirectory}/${shortdate}.csv" createDirs="true" keepFileOpen="true" autoFlush="false" maxArchiveFiles="1000" archiveAboveSize="10485760" archiveEvery="Day"> <layout xsi:type="CSVLayout" delimiter="auto" withHeader="true" autoreload ="true"> <column name="Time" layout="${date:format=yyyy-MM-dd_HH\:mm\:ss.fffffff}" quoting="Nothing" /> <column name="Level" layout="${level}" quoting="Nothing"/> <column name="Station" layout="${gdc:item=station}" quoting="Nothing"/> <column name="Message" layout="${message}" quoting="Nothing"/> </layout> </target> </targets>
2、修改程式碼
呼叫Logger.Info(logStr);前,按以下程式碼修改,特別是最後一句,特別關鍵,其他方式更新config都不管用
NLog.GlobalDiagnosticsContext.Set("logDirectory", @"D:\zz\D "); LogManager.Configuration = LogManager.Configuration;吾生也有涯,而知也無涯,以有涯隨無涯,殆已。