在CentOS系统上,Filebeat的日志轮转可以通过配置logrotate工具来实现。以下是详细的步骤和配置示例:
如果你的CentOS系统还没有安装logrotate,可以使用以下命令进行安装:
sudo yum install logrotate -y
Filebeat的日志文件通常位于/var/log/filebeat/filebeat
。你需要编辑logrotate配置文件来指定如何轮转这些日志。
你可以创建一个新的配置文件或者编辑现有的配置文件。通常,logrotate的配置文件位于/etc/logrotate.d/
目录下。
sudo vi /etc/logrotate.d/filebeat
/var/log/filebeat/*.log {
daily
missingok
rotate 7
compress
notifempty
create 640 root adm
sharedscripts
postrotate
if [ -f /var/run/filebeat/filebeat.pid ]; then
kill -USR1 `cat /var/run/filebeat/filebeat.pid`
fi
endscript
}
daily
: 每天轮转日志。missingok
: 如果日志文件丢失,不要报错。rotate 7
: 保留7个轮转后的日志文件。compress
: 压缩轮转后的日志文件。notifempty
: 如果日志文件为空,则不进行轮转。create 640 root adm
: 轮转后创建新的日志文件,权限为640,属主为root,属组为adm。sharedscripts
: 如果有多个日志文件匹配,只执行一次postrotate脚本。postrotate
: 轮转后执行的脚本。这里发送USR1信号给Filebeat进程,通知它重新打开日志文件。你可以手动测试logrotate配置是否正确:
sudo logrotate -f /etc/logrotate.d/filebeat
确保Filebeat服务正在运行,并且监听正确的端口:
sudo systemctl status filebeat
你可以通过查看日志文件来监控日志轮转是否正常工作:
tail -f /var/log/filebeat/filebeat-*
通过以上步骤,你应该能够在CentOS上成功配置Filebeat的日志轮转。如果有任何问题,请检查logrotate的日志文件(通常位于/var/log/logrotate.log
)以获取更多信息。