Filebeat在CentOS上通常通过Systemd管理,可通过以下命令快速检查其运行状态:
sudo systemctl status filebeat
active (running)状态、最近日志条目及启动时间。sudo systemctl start filebeatsudo systemctl enable filebeatsudo systemctl stop filebeat日志是排查Filebeat异常的关键,可通过以下方式查看:
sudo journalctl -u filebeat -f
该命令会持续输出Filebeat的实时日志,便于观察实时运行状态。/var/log/filebeat/目录下,可通过以下命令查看最新日志:sudo tail -f /var/log/filebeat/filebeat
Filebeat提供内置HTTP API,可获取其运行状态、事件处理数量、输入/输出模块状态等详细指标:
curl http://localhost:8080/stats
8080,若修改过配置需替换为实际端口。filebeat(进程状态)、inputs(输入模块)、outputs(输出模块)等关键指标。通过以下命令可实时查看Filebeat进程的CPU、内存占用情况:
ps aux | grep filebeat
输出中会显示Filebeat进程的PID、CPU使用率(%CPU)、内存使用率(%MEM)。top命令:按P键排序CPU占用,按M键排序内存占用,找到filebeat进程。htop命令(需安装):更直观的动态监控界面,支持鼠标操作。若需长期、可视化监控Filebeat性能(如事件吞吐量、延迟、错误率),推荐使用Prometheus+Grafana组合:
步骤1:配置Filebeat导出指标
编辑/etc/filebeat/filebeat.yml,启用Prometheus输出:
output.prometheus:
enabled: true
hosts: ["localhost:9200"] # Prometheus抓取地址
重启Filebeat使配置生效:sudo systemctl restart filebeat。
步骤2:配置Prometheus抓取指标
编辑Prometheus的prometheus.yml,添加Filebeat抓取任务:
scrape_configs:
- job_name: 'filebeat'
static_configs:
- targets: ['localhost:9200'] # Filebeat Prometheus端口
重启Prometheus:sudo systemctl restart prometheus。
步骤3:Grafana可视化
http://localhost:3000,账号admin/admin)。11592,涵盖事件处理、资源使用等指标)。若已部署ELK Stack(Elasticsearch+Logstash+Kibana),可通过Kibana快速查看Filebeat日志和状态:
GET /filebeat-*/_search
{
"query": {"match_all": {}},
"size": 10
}
以上方法覆盖了从基础状态检查到高级可视化的完整监控需求,可根据实际环境选择合适的方式。例如,小型环境可使用systemctl和日志命令快速排查问题;大型生产环境建议结合Prometheus+Grafana实现自动化监控与告警。