问题标签 [log-rotation]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
252 浏览

nlog - NLog 日志轮换/归档不一致的行为

我有一个使用 NLog 创建和维护日志文件的项目。这包括使用日志轮换/归档旧日志文件。但是,我发现 NLog 的归档设置并不总是得到尊重,尤其是关于 ArchiveEvery 配置选项。基于this stackoverflow answer,我假设库检查文件的最后写入时间,以检查它是否必须归档当前文件并启动新文件,但直到有新的日志消息传递给库。

在我的项目中,我将库配置为每分钟存档一次。这应该没问题,因为我的项目每隔几秒钟记录一次消息,并且我希望每分钟都能看到一个存档文件,因为日志消息不断出现。但是,我看到不一致的行为,有时在不同但随后的归档日志文件之间有几分钟的时间。例如,我的磁盘上目前有以下文件:

如您所见,归档文件并非每分钟创建一次。至于我目前的 NLog 配置:

我正在努力让它“正常”工作。我将其写在括号中,因为我对 NLog 没有太多经验,也不真正了解库的行为方式。我曾希望在 GitHub 上的 NLog wiki 页面上找到更多信息,但在那里我找不到我需要的信息。

编辑

fileTarget.FileName 由一个基本文件夹 (storage.Folder.FullName = "C:\ProgramData\\")、一个子文件夹 (LogFolder = "AuditLog") 和文件名 (LogFileName = "Log.csv") 组成:

fileTarget.ArchiveFileName 没有设置,所以我想它是默认的。难道是为 FileName 指定完整路径搞砸了?如果是这样,是否有不同的方法来指定一个特定的文件夹来放置日志文件?

0 投票
1 回答
509 浏览

c++ - Boost rotate logs hourly

I am using boost::log as the logging engine for a service. I know how to set up the log rotation to be daily/weekly, but what I would like to set-up is an hourly rotation of the logs. I am unable to find any straight forward implementation in boost and I am thinking maybe someone has a workaround?

Also, is it possible to have rotated files created, even if there was no log entry for a specific hour?

use case:

I'd like the output files to be:

Any suggestions/code examples are much appreciated.

0 投票
1 回答
679 浏览

linux - 如何在 ubuntu 中按大小每小时轮换日志文件?

我的 rsyslog 文件在 logrotate 中的配置:

我已将 logrotate 从 cron.daily 复制到 cron.hourly。

然后我执行了以下命令:

尽管如此,它仍然无法正常工作。任何指导都会很有帮助。

谢谢你。

0 投票
1 回答
875 浏览

python - python中TimedRotatingFileHandler的翻转没有发生

我有一个每天运行的脚本,并且使用 Python 的 TimedRoatingLogFileHandler。下面是代码的摘录。

我期待每天创建一个新的日志文件 test.log,并且以前的日志将被移动到 test.log.1 和 test.log.2 等。

我的假设正确吗?如果是这样,为什么它没有发生?我仍然可以在今天的日志中看到昨天的输出。昨天的日志文件没有像我预期的那样移动到另一个文件。我在 SUSE linux 机器上使用 Python 2.7。我检查了其他线程,但其中大多数不包含任何答案。如果您需要更多详细信息,请告诉我。

0 投票
1 回答
2704 浏览

node.js - 如何结合 Winston 和 pm2 进行按特定时间表轮换的日志记录

我的节点应用程序目前正在使用 Winston 进行控制台日志记录,但是在开发环境中存在各种难以调试的问题。我需要创建一个仅记录警告和错误并将日志保存到文本文件的记录器。它应该轮换间隔并在周日的每个午夜重新启动。这是我目前使用 Winston 的记录器:

我听说 pm2-logrotate 应该可以做我想做的事,但我不确定如何将它集成到我的应用程序中。

0 投票
2 回答
199 浏览

logging - 如何清除 aerospike 中的日志?

我正在使用日志轮换,但不知何故日志在 90 天后没有被清除,这是我的 aerospike 的配置。日志也呈指数增长。

日志轮换的配置:

气钉的配置:

ls -ltr on /var/log/aerospike

0 投票
1 回答
2562 浏览

logrotate - 即使将旋转设置为 0,Logrotate 也不会旋转旧文件

在我的日志轮换设置中,对于特定的日志文件,轮换已设置为 0。但是一旦达到文件的大小,旧文件就会轮换到application.log.1而不是被删除。

根据文档,当旋转设置为 0 时应该删除该文件。为什么会这样?我还必须说日志轮换配置为每小时运行一次,但我们的日志文件在 1 小时内达到大小。因此,当 logrotate 每小时运行一次时,它会删除old application.log.1,滚动当前application.logapplication.log.1并创建一个新application.log文件。该文件的配置如下所示:

0 投票
1 回答
3715 浏览

logging - 如何配置 filebeat 来处理日志轮换?

我的设置

我有一个 docker 集群,其中supervisord正在将日志写入output.log共享卷,从中Filebeat读取日志并将其发送到 ES。为了防止磁盘满的问题,我已经配置supervisord了轮换日志,我担心 Filebeat 可能会漏掉日志或者发送两次日志。

我的问题

我希望 Filebeat 使用写入的日志output.log,而不会重复或丢失日志行。

我的问题

如何配置 Filebeat 来处理supervisord日志轮换?

0 投票
0 回答
235 浏览

c++ - Boost.log:在午夜文件名更改时重置日志轮换计数器

我使用文本文件后端作为接收器,其中包含占位符元素

  • 日期
  • 对数旋转计数器

“%Y-%m-%d_mylogfile_%3N.log”

此外,后端被配置为在一定大小和午夜旋转。

这适用于不超过午夜的程序。当一个程序运行一天,中午开始时,我有以下问题:

当文件在午夜获得新名称时,计数器不会重置。当我在中午重新启动程序时,出现了令人困惑的日志轮换顺序。

问题:
当文件名中的日期更改但程序继续运行时,有人可以帮助并告诉我如何重置日志轮换计数器吗?

先感谢您。

0 投票
0 回答
58 浏览

python - 使用 Python 进行日志轮换。需要整合

在下面的代码中,我从 call.py 脚本调用 log.py,如下所示。我已经实现了日志处理程序,我在 log.py 中设置日志级别,并在我想将日志打印到文件时调用 printlog 函数。但是,在这里我试图将日志轮换集成到 log.py 中。那是在达到特定日志文件大小的情况下,我需要轮换。请协助解决此问题。感谢进阶

日志文件

调用.py