opium
@opium
Просто люблю качественно работать

Чем мониторить сайты у себя?

Хочется открытый аналог сервисов вроде ping-admin.ru, webopulsar.ru, pingdom.com
Сейчас использую вебопульсар, но за последний год он слишком много раз зафакапил и я вовремя не узнал об упавшем сайте, хотя пару лет до этого он работал прекрасно.
Хочу поставить аналог к себе на сервер, чтобы контролировать любые риски с мониторингом сайтов.
  • Вопрос задан
  • 5212 просмотров
Пригласить эксперта
Ответы на вопрос 8
@baadf00d
если нужно рассылать оповещения — то nagios
чтобы смотреть на красивые графики — symon + syweb
Ответ написан
Комментировать
click0
@click0
Системный & сетевой архитектор
Самый простой — monit. Проверка доступности по icmp ping и по http запросу.
Ответ написан
Комментировать
pomeo
@pomeo
Т.е. вы со своего сервера хотите мониторить сайты на этом же сервере? Тогда вы не в ту сторону смотрите, вам нужны штуки как supervisord.org
Ответ написан
Возьмите zabbix он многое умеет, но придется разобраться.
Ответ написан
Комментировать
SLY_G
@SLY_G
журналист, переводчик, программист, стартапщик
Только что наткнулся: uptimerobot.com/
Ответ написан
cabeza
@cabeza
Ставь нагиос и в связку к нему пинг-админ, ибо «Кто мониторит мониторинг?»
Ну и да, покупать энное количество виртуалок ради распределенного нагиоса зело дорого, геморно и нафик надо
Ответ написан
Комментировать
@1nd1go
Я тоже в свое время над этим думал. Мне надо было сделать запрос на http сервер и получить время ответа. И показать график.

Решил написать сам:
responseTime.sh:
#!/bin/bash

url=$1
output=$2
date=/home/centos/statistics/`date +"%Y%m%d"`

if [! -d "$date"]; then
  mkdir $date
fi

curl -o /dev/null -w "%{time_total}\n" -s $url \
  | awk -v url=$url '{printf "%s %s %s\n",$0,strftime("%Y%m%d-%T"),url;}' \
  >> $date/$output


Здесь мы дернули, и записали в файлик строчку вида:
0.111 20131021-17:13:13 http://ya.ru

Результат записей в файлик я передавал в gnuplot через скрипт:
#drawplot.sh
#!/bin/bash

today='date +"%Y%m%d"'
server="~/statistics/"$today"/"$1

awk -v server="$server" -v today="$today" \
  '{gsub(/###server###/,server);gsub(/###server###/,server);gsub(/###today###/,today)};1' ~/statistics/plot.conf \ 
  | gnuplot


#plot.conf
set terminal png size 640,480
set xdata time
set timefmt "%Y%m%d-%H:%M:%S"
set output "###server###.png"
set xrange ["###today###-00:00:00":"###today###:-23:59:59"]
set format x "%H:%M"
set yrange [0:10]
set ytics 1
set grid

plot "###server###" using 2:1 smooth unique


После этого появлялась или обновлялась .png картинка с графиком, ее можно было вставлять в страницу, если надо (для этого был отдельный скрипт :) ).

Запускалось по крону:
#crontab ex.
*/5 * * * * ~/statistics/responseTime.sh "http://ya.ru" yandex &> /dev/null && ~/statistics/drawplot.sh yandex &> /dev/null;


Сделано естественно на коленке с синей изолентой. Вы можете также например вставить посылку почты, если время curl будет больше определенного порога.
Ответ написан
@S-1
"аналог сервисов вроде ping-admin.ru"

В ping-admin сделано так много, что я ещё лет шесть назад отказался проектировать аналогичную систему. Это просто бессмысленно пытаться повторить то что сделано до тебя, а ещё и приумножить? Пустая и необоснованная трата времени и ресурсов. У пинг-админов реальный мониторинг, мне реально проще с полста баксов в месяц (шестнадцать https и две серьёзные DB) платить за их услуги нежели выстраивать свою инфраструтуру с нуля, а потом спать с ней лет пять.

27.12.2021

/UPD Темой мониторинга надо было заниматься в "нулевых". Ну может быть в конце нулевых (Пингадмин тому пример) а сейчас уже поздно. Площади мониторинга уже заняты и никакой новый сервис мониторинга там никому не впёрся ибо старые клиенты не уйдут на новый сервис, а новый сервис не получит новых клиентов потому, что их тупо нет (а те что есть, уже разобраны).
Банки, их банкоматы, базы данных, да всё уже разобрано. Системный администратор тоже хочет поспать. Так что идея написать скрипт может и не плоха, а вот обеспечить действующую инфраструктуру под "это дело" это ещё то дело.
1nd1go 1nd1go это в ваш огород "камешек" ))
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы