Разработка сайтов, дизайн и мультимедиа
+38 044‎ 494 35 20
Главная / Лаборатория / Скрипт мониторинга системы / Миниторинг запущены ли необходимые сервисы
Скрипт мониторинга системы
Заполнить бриф on-line

Миниторинг запущены ли необходимые сервисы

Цель: произвести проверку запущены или нет необходимые нам сервисы.

# Первым делом, составляем список процессов, которые мы будем мониторить
daemons=( crond memcached nginx php-fpm sshd proftpd posix )
scripts=(
 "/etc/init.d/crond start"
 "/etc/init.d/memcached start"
 "/etc/init.d/nginx start"
 "/etc/init.d/php-fpm start"
 "/etc/init.d/sshd start"
 "/etc/init.d/proftpd start"
 "/etc/init.d/posix start"
)

# получаем длину массива
dlen=${#daemons[@]}
# организовываем цикл по массиву daemons
for (( i=0; i<${dlen}; i++ ));
do
  // в переменную checkrez загоняем результат проверки наличия сервиса
  checkrez=`ps -A|grep ${daemons[$i]}|wc -l`
  // если $checkrez значение равно нулю - значит процесс отсутсвует
  // отсылаем уведомление  попытаемся запустить соответсвующей командой из массива $scripts
  if [ $checkrez -eq 0 ]; then
   echo "${daemons[$i]} не обнаружен в запущенных процессах\n">>$mailfile
   if [ ${scripts[$i]} -ne "" ]; then
     `${scripts[$i]}`
     checkrez=`ps -A|grep ${daemons[$i]}|wc -l`
     if [ $checkrez -eq 0 ]; then
      echo "ВНИМАНИЕ!!! ${daemons[$i]} не смогли перезапустить! Требуется ручное вмешательство\n===================\n">>$mailfile
     else
      echo "$mailbody\nНо ${daemons[$i]} успешно запустили заново.n===================\n">>$mailfile
     fi
   fi
 fi
done

×
  • Facebook
  • Google
  • Twitter