gpt4 book ai didi

configuration - 为什么这个 NLog 配置没有存档?

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

这个 NLog 配置有什么问题?为什么不在“c:\TempFiles\AppLogs”中创建存档日志?奇怪的是,它似乎适用于 archiveEvery="Minute"。这是怎么回事?

<?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="Debug" internalLogFile="../logs/nlog.log" throwExceptions="true">

<!-- make sure to set 'Copy To Output Directory' option for this file -->
<!-- go to http://nlog-project.org/wiki/Configuration_file for more information -->

<extensions>
<add assembly="NGinnBPM.MessageBus"/>
</extensions>
<variable name="logDir" value="${basedir}/logs"/>
<variable name="LogsLocation" value="c:\TempFiles\AppLogs" />

<targets>
<target name="err" xsi:type="File"
archiveFileName="${LogsLocation}\logs\contact_errors.{#}.txt"
archiveEvery="Day"
archiveNumbering="Rolling"
maxArchiveFiles="30"
concurrentWrites="true"
fileName="${logDir}/contact_errors.${shortdate}.log" layout="${time}|T${threadid}|M${mdc:nmbrecvmsg}|${level}|${logger}|${message}${onexception:inner=${newline}${exception:format=tostring}}" />
<target name="nginn" xsi:type="File"
archiveFileName="${LogsLocation}\logs\contact_nginn.{#}.txt"
archiveEvery="Day"
archiveNumbering="Rolling"
maxArchiveFiles="30"
concurrentWrites="true"
fileName="${logDir}/contact_nginn.${shortdate}.log" layout="${time}|T${threadid}|M${mdc:nmbrecvmsg}|${level}|${logger}|${message}${onexception:inner=${newline}${exception:format=tostring}}" />
<target name="all" xsi:type="File"
archiveFileName="${LogsLocation}\logs\contact.{#}.txt"
archiveEvery="Day"
archiveNumbering="Rolling"
maxArchiveFiles="30"
concurrentWrites="true"
fileName="${logDir}/contact.${shortdate}.log" layout="${time}|T${threadid}|M${mdc:nmbrecvmsg}|${level}|${logger}|${message}"/>

</targets>
<rules>
<logger name="*" minlevel="Debug" writeTo="all" />
<logger name="Slate.*" minlevel="Trace" writeTo="all" final="true"/>
<logger name="*" minlevel="Error" writeTo="err" />
<logger name="NGinnBPM.*" minlevel="Trace" writeTo="nginn" final="true"/>

</rules>
</nlog>

最佳答案

所有目标的所有文件名都包含表达式 ${shortdate} ,因此每天都会创建一个新的日志文件。

所有目标的存档期设置为 Day应该每天归档日志文件(归档并清空当前日志文件)。

由于每天都会创建一个新的日志文件,因此当前的日志文件永远不会超过一天。因此,没有什么可存档的。

您可以更改日志的文件名(省略日期,因为如果您使用归档则没有用),或者确保归档间隔比日志文件的生命周期短(为了测试,只需尝试将其设置为Minute)。

关于configuration - 为什么这个 NLog 配置没有存档?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28048742/

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