linux

Filebeat如何进行日志轮转

小樊
37
2025-08-24 00:22:37
栏目: 编程语言

Filebeat日志轮转主要有两种方式:

一、使用logrotate工具(推荐)

  1. 安装logrotate(若未安装):
    # CentOS  
    sudo yum install logrotate  
    # Debian/Ubuntu  
    sudo apt-get install logrotate  
    
  2. 创建配置文件
    /etc/logrotate.d/下新建filebeat文件,添加以下内容(以CentOS为例):
    /var/log/filebeat/filebeat.log {  
      daily       # 每天轮转  
      rotate 7    # 保留7天日志  
      compress    # 压缩旧日志  
      missingok   # 忽略丢失文件  
      notifempty  # 空文件不轮转  
      create 640 root adm  # 新文件权限  
      postrotate  
        if [ -f /var/run/filebeat/filebeat.pid ]; then  
          kill -USR1 $(cat /var/run/filebeat/filebeat.pid)  # 通知Filebeat重新打开日志  
        fi  
      endscript  
    }  
    
  3. 测试并启用
    sudo logrotate -f /etc/logrotate.d/filebeat  # 手动测试  
    # 确保logrotate每日自动运行(检查/etc/cron.daily/logrotate)  
    

二、使用Filebeat内置配置

  1. 编辑配置文件
    修改/etc/filebeat/filebeat.yml,在filebeat.inputs中添加:
    filebeat.inputs:  
    - type: log  
      enabled: true  
      paths: ["/var/log/filebeat/*.log"]  
      logging.to_files: true  
      logging.files:  
        path: /var/log/filebeat  
        name: filebeat  
        keepfiles: 7  # 保留7个文件  
        permissions: "640"  
    
  2. 重启服务
    sudo systemctl restart filebeat  
    

注意事项

0
看了该问题的人还看了