首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >pure-ftpd日志记录到滚动日志文件(logrotate.d)

pure-ftpd日志记录到滚动日志文件(logrotate.d)
EN

Stack Overflow用户
提问于 2021-08-20 11:38:11
回答 1查看 72关注 0票数 0

我们有一个相当大的依赖于FTP消息传递的系统。/var/log/pureftpd.log受到监视以响应特定操作。

目前,我注意到一个有趣的问题,例如,纯ftpd正在将新事件记录到旧的日志文件(pureftpd.log.1)中。

当FTP连接打开很长一段时间时,会发生这种情况。当logrotate通过重命名旧日志来轮换日志文件时。似乎当前活动的FTP连接仍然链接到旧文件,并且所有事件都写入其中。此问题将在FTP客户端重新连接后修复。

此行为导致pureftpd监控无法记录某些事件。

如何使用logrotate.d或其他方法修复它,以确保所有新事件始终写入正确的日志文件,而无需重新连接ftp客户端?

pure-ftpd在默认设置下运行,logrotate配置如下:

代码语言:javascript
复制
/var/log/pureftpd.log {
    weekly
    notifempty
    missingok
}

感谢您的任何建议:)

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-08-23 18:24:18

这是打开要写入的文件描述符的进程的常见行为;logrotate不处理这些打开的句柄,因此它们将“跟随”到新轮换的文件。因此你会看到这样的行为。

我假设您必须在旋转文件后重新加载或重新启动pure-ftpd守护进程本身,例如假设使用systemd

代码语言:javascript
复制
postrotate
    systemctl reload pure-ftpd > /dev/null
endscript

我不知道这会不会扼杀你所有的人脉。但这就是你所看到的行为的根源。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/68861605

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档