Страница 1 из 1

Мониторинг доступности портов + Cacti

Добавлено: 2009-12-28 15:12:56
100matolog
Мониторю сервера при помощи Cacti, но , не часто но иногда грохается апача или мускуль (изза кривого кода) на серверах.
Какти то начинает пустой график рисовать но алярма ни какого не выдает. На ихнем(какти) форуме посоветовали прикрутить плагин THOLD который умеет слать алярм по пороговым значениям. Но он к сожалению не подошел так как когда апач или иной сервис вылетает и не отдается по снмп - он(плагин) не сигналит.
Решил нарисовать скрипт который периодически будет проверять наличие 80 или иного порта.
Нарыл в инете похожий скрипт и решил переделать для своих нужд - но к сожалению с башем не владах.
Что имеется

Код: Выделить всё

#!/usr/local/bin/bash                                                                                                                                                              
for a in $(<servers); do nmap `echo $a | sed -e 's/:/ -p /'` | grep -q "/tcp *open " || echo $a; done > /var/test/serverlist;                                                      
DATENOW=$(date +%d-%m-%Y_%T)                                                                                                                                                       
if (!( [ -z $(cat /var/test/serverlist) ])); then                                                                                                                                  
echo $DATENOW >> /var/test/log.check                                                                                                                                               
cat /var/test/serverlist >> /var/test/log.check                                                                                                                                    
mail maxim@della.ua< /var/test/serverlist                                                                                                                                          
fi                                                                                                                                                                                 
exit   
В переменную считывается содержимое файлика с содержимым следующего формата - IP:#port
Не подскажете - как привести скрипт к виду - если порт "звонится" то что бы он выдавал в консоль 1.Если нет - то 0.
Заранее благодарю

Re: Мониторинг доступности портов + Cacti

Добавлено: 2009-12-28 15:50:35
terminus
http://oss.oetiker.ch/smokeping/
http://oss.oetiker.ch/smokeping/probe/E ... tp.en.html

---

а чтобы не быть жестоким:

Код: Выделить всё

#!/bin/sh
                                                                                                                                                           
for a in `cat ./servers`
do 

nc -w 5 `echo $a | sed 's/:/" "/g'`

  if [ $? -eq 0]
  then
    echo "1"
  else
    echo "0"
  fi

done
                                                                                                                                                                                                                               
exit   

Re: Мониторинг доступности портов + Cacti

Добавлено: 2009-12-28 16:07:16
100matolog
пасиба