0
我NLOG配置文件如下:在製作時的一個因素運行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">
<targets>
<target xsi:type="File"
name="file"
layout="${longdate}|${level:uppercase=true}|${logger}|${message}"
archiveAboveSize="2000"
maxArchiveFiles="1"
archiveFileName="${basedir}/log_archived.txt"
fileName="log.txt" />
</targets>
<rules>
<logger name="*" minlevel="Info" writeTo="file" />
</rules>
</nlog>
在我的項目的代碼如下:
//Step1
for (int i = 0; i < 100; i++)
{
logger.Fatal("Sample fatal error message:: {0}", i);
}
//Step2
var nlogConfigFile = "NLog.config";
var xdoc = XDocument.Load(nlogConfigFile);
var ns = xdoc.Root.GetDefaultNamespace();
var fileTarget = xdoc.Descendants(ns + "target").FirstOrDefault(t => (string)t.Attribute("name") == "file");
fileTarget.Attribute("archiveAboveSize").SetValue(8000);
xdoc.Save(nlogConfigFile);
//Step3
for (int i = 0; i < 100; i++)
{
logger.Fatal("Sample fatal error message:: {0}", i);
}
在第一步結束。我有一個2KB的log.txt
。然後在第2步中,我將archiveAboveSize
更改爲8K。然後在第3步結束時,我應該有一個8K的log.txt
。但它沒有發生。該文件保持2KB。但是如果我關閉應用程序並再次運行它,則log.txt大小爲8KB。爲什麼在第3步的末尾不我與了關閉應用
純迷死人!再次感謝 – user2968369