Using Nagios
How to use Nagios to Monitor your scheduled jobs
Last updated
Was this helpful?
How to use Nagios to Monitor your scheduled jobs
Last updated
Was this helpful?
Our example job's md5 is 0f517c9d32a032b84615c82461e1c864
In your host config:
define service {
use generic-service;
host_name my.server.com
service_description Last Run Failed
check_command check_nrpe!check_last_run_job1
notifications_enabled 1
}
In your nrpe.cfg:
command[check_last_run_job1]=cd /your/project && php artisan scheduler-watcher:checklastevent 0f517c9d32a032b84615c82461e1c864 --no-ansi
Write a SQL that shows you how many minutes have passed since last run:
SELECT CEILING(TIME_TO_SEC(TIMEDIFF(NOW(),je.jobe_db_created))/60) AS c
FROM job_events je
INNER JOIN jobs j
ON je.jobe_job_id = j.job_id
WHERE j.job_md5 = '0f517c9d32a032b84615c82461e1c864'
ORDER BY je.jobe_id DESC LIMIT 0, 1;
Write a bash script, PHP or whatever you prefer:
In case the result of the SQL shows more than 15, exit your script with exitcode 2, if lower, exit with 0.
Read this for further informations and example scripts.