Script to monitor process on Linux
November 26, 2012 1 Comment
Environment: Oracle Linux 6.2
Sometimes you want to monitor a process on your Linux server and do some alerting when the process is not running anymore.
The following shell script can be used as an example. It will monitor the “dbconsole” process (database control) and send a e-mail message when the process is not running anymore.
$ vi check_db_control.sh
#!/bin/sh PROCESSFILE='dbconsole' if [ `ps ax|grep -v grep|grep -ic $PROCESSFILE` -gt 0 ] then echo "$PROCESSFILE is running, everything is fine" else echo "$PROCESSFILE is not running on `hostname -s`!" | mail -s "$PROCESSFILE down!" firstname.lastname@example.org fi exit
$ chmod u+x check_db_control.sh
To schedule the script, you can add it to cron. For example, this script will run every day at 10:00AM:
$ crontab -e
# Monitoring dbconsole process 00 10 * * * /home/oracle/scripts/check_db_control.sh 1>/dev/null 2>&1