简体   繁体   中英

NLog - It doesn't delete old log files

ASP.NET CORE Using NLog

I have some trouble , it doesn't delete old logs file.

"MaxArchiveFiles" and "maxArchiveDays" did not execute the action of deleting logs properly.

What I do wrong? Thanks!

<?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"
    autoReload="true"
    internalLogLevel="info"
    internalLogFile="C:\Logs\testProject\nlog-internal.txt">

  <extensions>
    <add assembly="NLog.Web.AspNetCore"/>
  </extensions>


    <targets>
    <!-- write logs to file  -->
    <target xsi:type="File" name="ALL"
            fileName="C:\Logs\testProject\testProject.${cached:${date:format=yyyy-MM-dd}}.log"
            layout="${longdate}|${uppercase:${level}}|${threadid}|${logger}|${message} ${exception:format=ToString}" 
            maxArchiveFiles="20"
            archiveFileName="C:\Logs\testProject\testProject{#}.log"
            archiveDateFormat="yyyy-MM-dd"
            archiveAboveSize="104857600"
            archiveNumbering="DateAndSequence"
            maxArchiveDays="3"
            archiveEvery="Day"       
          />

    </targets>




    <rules>
        <logger name="*" minlevel="Trace" writeTo="ALL" /> 
    </rules>
</nlog>

Current files (files from today) are not part of archive when using MaxArchiveDays. So maxArchiveDays="1" will only clean files older than yesterday.

You could consider removing archiveFileName and archiveDateFormat and archiveNumbering , so it becomes this:

    <target xsi:type="File" name="ALL"
            fileName="C:\Logs\testProject\testProject.${cached:${date:format=yyyy-MM-dd}}.log"
            layout="${longdate}|${uppercase:${level}}|${threadid}|${logger}|${message} ${exception:format=ToString}"
            maxArchiveFiles="100"
            archiveAboveSize="10485760"
            maxArchiveDays="1"
          />

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM