#!/bin/bash

athena_dir="/home/athena/658/"

while [ true ] ; do

if [ ` ps fauxw | grep map-server | grep -v grep | wc -l ` -eq 0 ];then
        #echo `date` " -- map-server crashed - restarting"
        echo `date` " -- map-server crashed - restarting" >> /var/log/athena_status.log
        killall -9 map-server
        cd $athena_dir
        nohup ./map-server ./conf/map_athena.conf ./inter_athena.conf &
        sleep 240
        #sleep 40 #for fast pc's remove the "#" at the beginning of the line and delete the line above
fi


if [ ` ps fauxw | grep map-server | grep -v grep | awk '{print $3}' | awk 'BEGIN{FS="."} {print $1}' ` -gt 10 ];then
        #echo `date` " -- mapserver cpuload over 10 - restarting"
        echo `date` " -- mapserver cpuload over 10 - restarting" >> /var/log/athena_status.log
        killall -9 map-server
        cd $athena_dir
        nohup ./map-server ./conf/map_athena.conf ./inter_athena.conf &
        sleep 240
        #sleep 40 #for fast pc's remove the "#" at the beginning of the line and delete the line above
        #echo `date` " -- restarted"
        echo `date` " -- restarted" >> /var/log/athena_status.log
fi

if [ ` ps fauxw | grep char-server | grep -v grep | wc -l ` -eq 0 ];then
        #echo `date` " -- char server crashed - restarting"
        echo `date` " -- char server crashed - restarting" >> /var/log/athena_status.log
        killall -9 char-server
        cd $athena_dir
        nohup ./char-server ./conf/char_athena.conf ./conf/inter_athena.conf &
        #echo `date` " -- restarted"
        echo `date` " -- restarted" >> /var/log/athena_status.log

fi

if [ ` ps fauxw | grep login-server | grep -v grep | wc -l ` -eq 0 ];then
        #echo `date` " -- login server crashed - restarting"
        echo `date` " -- login server crashed - restarting" >> /var/log/athena_status.log
        killall -9 login-server
        cd $athena_dir
        nohup ./login-server ./conf/login_athena.conf &
        #echo `date` " -- restarted"
        echo `date` " -- restarted" >> /var/log/athena_status.log

fi


#echo `date` " -- everything is fine"
echo `date` " -- everything is fine" >> /var/log/athena_status.log
sleep 30
done