+++ /dev/null
-#!/bin/bash
-
-# Данный скрипт производит мониторинг СТГ-сервера на зависание и в
-# случае его зависания перезапускает.
-# Для работы скрипта в настройках СТГ должен быть указан параметер
-# MonitorDir
-# Скрипт отрабатывает один раз и выходит. Т.е. он не работает постоянно
-# и следит за СТГ. Его нужно вызывать по крону или как-то еще с нужной
-# периодичностью!!!
-
-
-# Путь к файлам монитора. Должен совпадать со значением MonitorDir
-# в настройках сервера
-MONITOR_DIR=/var/stargazer/monitor/
-
-
-# Максимальная задержка обновления файлов монитора в секундах.
-# При привышении этого значения сервер считается зависшим и будет
-# перезапущен
-DT=300
-
-
-
-
-declare -i now=`date +%s`
-declare -i DT=300
-declare -i file_time=0
-
-stg_running=`ps ax | grep stargazer`
-if [ -z "$stg_running" ]
-then
- echo "Stargazer is not running"
- exit 0
-fi
-
-#wakeuper for traffcounter
-ping -c 1 127.0.0.1 > /dev/null
-sleep 1
-
-for mon in $MONITOR_DIR/*
-do
- if [ ! -r $mon ]
- then
- echo "no monitor files"
- exit 0
- fi
- file_time=`stat -c%Y $mon`
-
- if (( $now - $file_time > $DT ))
- then
- echo "Stargazer is deadlocked!"
-
- # Команда остаовки СТГ
- killall -KILL stargazer
-
- rm -f $MONITOR_DIR/*
- sleep 15
-
- # Команда запуска СТГ
- /etc/init.d/stargazer start
-
- fi
-
-done
-
-