# Using Nagios

![](https://4224790562-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-M8HGpoZF9M-GXbK9Vdx%2F-M8HNBtEg-u3t4q2YMc0%2F-M8HPrKFX6Jvy2XUGzHd%2Fimage.png?alt=media\&token=cedcb461-ba89-439e-bfd0-c491a388f7e8)

#### Get informed in case the last run had problems (exitcode > 0)

Our example job's md5 is `0f517c9d32a032b84615c82461e1c864`&#x20;

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:

```bash
command[check_last_run_job1]=cd /your/project && php artisan scheduler-watcher:checklastevent 0f517c9d32a032b84615c82461e1c864 --no-ansi
```

#### Get informed in case the job did not run in the last 15 minutes

Write a SQL that shows you how many minutes have passed since last run:

```sql
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:&#x20;

In case the result of the SQL shows more than 15, [exit your script](https://assets.nagios.com/downloads/nagioscore/docs/nagioscore/3/en/pluginapi.html) with exitcode 2, if lower, exit with 0.

Read [this](https://unixmen.com/write-nagios-plugin-using-bash-script/) for further informations and example scripts.
