gpt4 book ai didi

NLog存档配置

转载 作者:行者123 更新时间:2023-12-05 01:33:13 24 4
gpt4 key购买 nike

在我的一些程序中,我按预期进行了 30 天的轮换,其中包含几个月的多个条目,但只有 30 个日志文件。在其他程序中,我只有一天的日志文件,但总共只有 30 个日志文件。我想要的只是过去 30 天的日志文件条目,其中包含 30 个日志文件。我想我不知道我错过了什么。

昨天我的一个日志文件在程序启动备份时被覆盖,所以我丢失了可以告诉我发生了什么的数据。然后我的第二个问题是,归档只是删除不符合模式的文件,还是实际上将日志文件放在某个地方?什么才是真正的存档?这是我的 nlog.config:

<?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">

<!--
See https://github.com/nlog/nlog/wiki/Configuration-file
for information on customizing logging rules and outputs.
-->
<variable name="LogDir" value="${specialfolder:folder=MyDocuments}/MyApp/Log"/>
<variable name="LogDay" value="${date:format=dd}"/>
<targets async="true">
<!-- add your targets here -->
<target name="LogTarget1"
xsi:type="File"
fileName="${LogDay}.log"
encoding="utf-8"
maxArchiveFiles="30"
archiveNumbering="Sequence"
archiveAboveSize="52428800"
archiveFileName="${LogDay}.{#######}.log"
layout="${date:format=MM/dd/yyyy HH\:mm\:ss}|${level:uppercase=true}|${message}" />

</targets>

<rules>
<!-- add your logging rules here -->
<logger name="*" minlevel="Trace" writeTo="LogTarget1" />

</rules>
</nlog>

最佳答案

这是 NLog 的一个缺点,没有很好地记录。

当文件应该被删除(例如 max archives files)时,日志文件和存档文件不能在同一个文件夹中。

因此,此配置的一种解决方法是将 archifeFilePath 更改为

archiveFileName="archive/${LogDay}.{#######}.log"

另见 this issue on GitHub

关于NLog存档配置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40636386/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com