3 # Данный скрипт производит мониторинг СТГ-сервера на зависание и в
4 # случае его зависания перезапускает.
5 # Для работы скрипта в настройках СТГ должен быть указан параметер
7 # Скрипт отрабатывает один раз и выходит. Т.е. он не работает постоянно
8 # и следит за СТГ. Его нужно вызывать по крону или как-то еще с нужной
12 # Путь к файлам монитора. Должен совпадать со значением MonitorDir
13 # в настройках сервера
14 MONITOR_DIR=/var/stargazer/monitor/
17 # Максимальная задержка обновления файлов монитора в секундах.
18 # При привышении этого значения сервер считается зависшим и будет
25 declare -i now=`date +%s`
27 declare -i file_time=0
29 stg_running=`ps ax | grep stargazer`
30 if [ -z "$stg_running" ]
32 echo "Stargazer is not running"
36 #wakeuper for traffcounter
37 ping -c 1 127.0.0.1 > /dev/null
40 for mon in $MONITOR_DIR/*
44 echo "no monitor files"
47 file_time=`stat -c%Y $mon`
49 if (( $now - $file_time > $DT ))
51 echo "Stargazer is deadlocked!"
53 # Команда остаовки СТГ
54 killall -KILL stargazer
60 /etc/init.d/stargazer start