Monit funciona muito bem para isso.
O comando monit status
mostra essa informação claramente:
Process 'ssh'
status Running
monitoring status Monitored
pid 11239
parent pid 1
uid 0
effective uid 0
gid 0
uptime 32d 5h 1m
children 230
memory 1.2 MB
memory total 2.0 GB
memory percent 0.0%
memory percent total 0.6%
cpu percent 0.0%
cpu percent total 0.1%
data collected Mon, 09 Jan 2017 11:34:08
Process 'cron'
status Running
monitoring status Monitored
pid 669744
parent pid 1
uid 0
effective uid 0
gid 0
uptime 1m
children 0
memory 1.2 MB
memory total 1.2 MB
memory percent 0.0%
memory percent total 0.0%
cpu percent 0.0%
cpu percent total 0.0%
data collected Mon, 09 Jan 2017 11:34:08
Process 'newrelic'
status Running
monitoring status Monitored
pid 11377
parent pid 1
uid 495
effective uid 495
gid 495
uptime 32d 5h 1m
children 1
memory 500.0 kB
memory total 8.3 MB
memory percent 0.0%
memory percent total 0.0%
cpu percent 0.0%
cpu percent total 0.0%
data collected Mon, 09 Jan 2017 11:34:08