Hi there,
I'm having a difficult time trying to monitor Logstash using monit. All I want to do is check if Logstash is either up/down and if it's processing requests. Can anyone point to me to a direction here?
Regards,
Rashid
Hi there,
I'm having a difficult time trying to monitor Logstash using monit. All I want to do is check if Logstash is either up/down and if it's processing requests. Can anyone point to me to a direction here?
Regards,
Rashid
Logstash 5.0 introduces monitoring APIs would be very useful here. For earlier versions it's... trickier.
I'm still using LS1.5
Using the heartbeat output plugin and then using monit to check the timestamp to see if its running.
I ran into some file read/write permission errors, so I had to manually chmod the output file.
# setup log file for monit to make sure logstash is still running
input {
heartbeat {
message => "sequence"
interval => 60
type => "heartbeat"
}
}
output {
if [type] == "heartbeat" {
#stdout {codec => rubydebug }
file {
#sudo chmod 777 /var/log/logstash/logstash-heartbeat.log (so monit can read it)
path => "/var/log/logstash/logstash-heartbeat.log"
}
}
}
monit config script:
check process logstash with pidfile /var/run/logstash.pid
start program = "/etc/init.d/logstash start"
stop program = "/etc/init.d/logstash stop"
check file logstash-heartbeat.log with path /var/log/logstash/logstash-heartbeat.log
if timestamp > 10 minutes then restart
© 2020. All Rights Reserved - Elasticsearch
Apache, Apache Lucene, Apache Hadoop, Hadoop, HDFS and the yellow elephant logo are trademarks of the Apache Software Foundation in the United States and/or other countries.