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實現自動化監控與告警。