I prefer using this script with cron as it's easily configurable and expandable (Written by me)
#!/usr/bin/env python
import commands
import os
from sys import exit
# exit()
config = {
'servername' : 'servername', # Name of the wow server (Prefix for the screen session)
'user' : 'username', # User that should run the server processes
}
# List of processes that should be checked periodically
daemons = {
'logon' : '/path/to/mangos-realmd',
'realmname' : '/path/to/mangos-worldd'
}
for name, path in daemons.iteritems():
if not path in commands.getoutput('ps -Af'):
os.chdir(os.path.dirname(path))
os.system('screen -A -m -d -S ' + config['servername'] + '_' + name + ' sudo -u ' + config['user'] + ' ' + path)
print '[Restarter] Starting ' + name
else:
print '[Restarter]', name, 'is already running'
Configure it add it to cron and you're ready to go.