Как стать автором
Обновить

Комментарии 9

НЛО прилетело и опубликовало эту надпись здесь

Вот бы еще послушать как вы замеряли время ответа, и не попадает ли туда время работы самого скрипта, а так-же как часто вы эти запросы делаете? Ведь время реакции, скажем на "Упавший" магазин может стоить очень дорого...

Замеряю чисто время отработки curl, вот так:

    $start_time = microtime(true);
    $response = curl_exec($ch);
    $end_time = microtime(true);
    $result['response_time_ms'] = intval(round(($end_time - $start_time) * 1000));

Далее, когда сайт уже на мониторинге, беру два последних результата и сравниваю их с последним сообщённым пользователю временем ответа.

  1. Если минимальное время из двух последних в два раза превышает последнее сообщённое время — сообщаю это новое время.

  2. Если максимальное из двух последних в два раза меньше последнего сообщённого — тоже сообщаю.

  3. В обоих случаях разница должна превышать минимальный порог в секунду.

Запросы делаю сейчас раз в 5 минут. Если 2 запроса подряд без ответа — шлю уведомление. К сожалению, многие сайты с завидной регулярностью "мерцают", пришлось добавить такой фильтр. Но некоторые и два раза подряд могут быть недоступны, а на третий раз отвечают — не знаю, с чем связано.

Т.е. аналитики времени запросов нет как я понимаю,только последние значения...

Много желающий платить, окупаются затраты на хостинг?

Есть ещё регулярный отчёт за сутки/неделю, в нём можно посмотреть статистику времени ответов, если Вы об этом:

Много желающий платить, окупаются затраты на хостинг?

Не больше десятка пока что. Хостинг примерно окупается, да.

У меня глаза начали кровоточить от sql запроса. :) По-моему это очень сложно. Я бы разбил на хранимые функции как минимум для удобства чтения.

А по проверке самих сайтов: если у пользователя отвалился бекенд то сервер вернёт 200, а при запросе к api пользователь ничего не увидит. Т.е. сайт лег. Но вы этого не увидите. И будете говорить, что с сайтом все ок.

Я бы разбил на хранимые функции как минимум для удобства чтения.

Из преимуществ текущего запроса — всё в одном месте, можно читать не переключаясь.

Но идея с хранимыми функциями мне тоже нравится. Если будет настроение и приведёте пример, какие можно было бы выделить функции — будет интересно.

если у пользователя отвалился бекенд то сервер вернёт 200, а при запросе к api пользователь ничего не увидит

Тут зависит от сайта. Если из-за неработающего API поменяется заголовок страницы, то бот сообщит. Можно, например, создать отдельную проверочную страницу для этих целей.

Можно отдельно добавить сам API в мониторинг (правда, никакой авторизации я не предусматривал).

Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации