Linux Process Monitoring

Linux process monitoring refers to the strategy of using a local agent that runs as a daemon, or as a cron job which polls the state of a process.

This can be as simple as to check that there exists a process with some specific numeric ID, or very complex checks to ensure that the status is not deadlocked, and configurable checks for resource usage.

Some popular Packages
monit god mon heartbeat-HA

Introduction
Typically, linux processing monitoring is used to either raise an alert about the error condition, or to run a remediation utility, such as a bash script or repair tool.

Process monitoring tools are often paired with more generalized alerting and monitoring tools such as nagios, zabbix, or ticketing tools like rt3.

monit
monit is a tool that supports a simple and robust configuration language, and simple http interface and scope for integration with other tools.

There is an commercial product called http://mmonit.com/

heartbeat-HA
this is a more complex product, which is part of a clustering suite of tools.