【问题标题】:Nlog does not delete the log fileNlog 不删除日志文件
【发布时间】:2014-07-02 11:01:45
【问题描述】:

我正在创建一个应用程序 ASP MVC。我将这个配置文件用于 NLOG

 <?xml version="1.0" encoding="utf-8" ?>

<target name="file"
        xsi:type="File"
        layout="${date}|${level}|${message}"
        fileName="C:\Log\log.txt"
        createDirs="true"
        archiveEvery="Day"
        concurrentWrites="true"
        archiveFileName="CopyLogs\${LogFileName}.{#####}.${LogFileExtension}"
        archiveAboveSize="500000" maxArchiveFiles="200"
        archiveNumbering="Rolling"
        deleteOldFileOnStartup="false"
 />

 </targets>

  <rules>
    <!-- add your logging rules here -->
      <logger name="*" minlevel="Info" writeTo="file" />
  </rules>
</nlog>

当日志文件大小等于 archiveAboveSize - 记录停止。当我删除现有文件时,会创建并写入一个新的日志文件。如何正确创建 NLOG 的配置文件?

【问题讨论】:

    标签: c# asp.net-mvc file logging nlog


    【解决方案1】:

    看看NLog Wiki

    基于大小的文件归档

    日志文件可以在达到一定大小后通过将它们移动到另一个位置来自动存档。以下配置将创建 logs/logfile.txt,一旦主日志文件到达,它将归档到 archives/log.000000.txt'、archives/log.000001.txt'、archives/log.000002.txt' 等10KB。

    <?xml version="1.0" ?>
        <nlog xmlns="http://www.nlog-project.org/schemas/NLog.xsd"
            xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    
        <targets>
            <target name="file" xsi:type="File"
                layout="${longdate} ${logger} ${message}" 
                fileName="${basedir}/logs/logfile.txt" 
                archiveFileName="${basedir}/archives/log.{#####}.txt"
                archiveAboveSize="10240"
                archiveNumbering="Sequence"
                concurrentWrites="true"
                keepFileOpen="false"
                encoding="iso-8859-2" />
        </targets>
    
        <rules>
            <logger name="*" minlevel="Debug" writeTo="file" />
        </rules>
    </nlog>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-08-05
      • 1970-01-01
      • 1970-01-01
      • 2021-05-24
      相关资源
      最近更新 更多