【发布时间】:2019-07-15 00:55:45
【问题描述】:
我相信你们都做得很好。
我们计划对以下文件实施日志轮换。
stdout.log
我们使用下面的日志轮换配置文件。
/usr/local/rms/kafka/kafka-connect-fluentd/stdout.log {
daily
rotate 7
maxsize 100M
minsize 10M
copytruncate
delaycompress
compress
notifempty
missingok
}
我们注意到文件正在旋转并且文件被截断。但应用程序不会将日志写入新文件。 我们尝试发送 HUP 信号,但没有成功。
-rw-r--r-- 1 appuser appuser 8.2M Feb 20 03:11 stdout.log.4.gz
-rw-r--r-- 1 appuser appuser 4.0M Feb 20 23:48 stdout.log.3.gz
-rw-r--r-- 1 appuser appuser 7.6M Feb 20 23:49 stdout.log.2.gz
-rw-r--r-- 1 appuser appuser 2.1G Feb 21 03:39 stdout.log.1
-rw-r--r-- 1 appuser appuser 2.2G Feb 21 14:15 stdout.log
应用程序本身没有重新加载选项,当我们需要重新加载或重新启动应用程序时,我们会停止应用程序并启动应用程序。
我们使用下面的命令来启动应用程序
nohup connect-standalone ${BASE}/connect-standalone.properties
${BASE}/FluentdSourceConnector.properties >& ${BASE}/stdout.log &
我们使用下面的命令来杀死应用程序
kill -9 <processid>
对于这种情况,我们如何实现日志轮换机制?
【问题讨论】:
-
>& ${BASE}/stdout.log- 您希望在每次重启时截断日志?最好使用标准的2>&1 >> ${BASE}/stdout.log然后使用非标准的>& -
@KamilCuk 这完全帮助并解决了我的问题。如果您不介意,请您稍微详细说明一下
标签: linux logrotate log-rotation