Tôi sử dụng zabbix trong môi trường của mình, nhưng tôi cho rằng phương pháp này cũng có thể hoạt động trong các thiết lập khác. Tôi đã cấu hình lệnh sau mà zabbix được phép sử dụng:
UserParameter=elasticsearch.commits,/usr/bin/curl -s 'localhost:9200/_cat/count?v' | /bin/sed -n '2p' | /bin/awk '{print $3}'
Điều này sẽ trả về tổng số hồ sơ elaticsearch đã cam kết. Vì vậy, tôi lấy giá trị này và chia cho số giây kể từ khi tôi lấy mẫu cuối cùng (tôi kiểm tra mỗi phút), nếu con số này giảm xuống dưới một giới hạn tùy ý tôi có thể cảnh báo nó. Tôi cũng sử dụng zabbix để kiểm tra xem liệu logstash PID có bị chết hay không và cũng cảnh báo điều đó và chạy lệnh sau:
UserParameter=elasticsearch.health,/usr/bin/curl -s 'http://localhost:9200/_cluster/health?pretty=true' | /bin/sed -n '3p' | /bin/awk -F'\"' '{print $4}' | /bin/sed s/yellow/0/ | /bin/sed s/green/0/ | /bin/sed s/red/1/
Điều này sẽ trở lại 1 nếu sức khỏe của cụm đã chuyển sang màu đỏ (vàng và xanh lá cây vẫn ổn), mà tôi cũng có thể cảnh báo.