Теперь можно проверить, лежит ли всё
Раньше, если очередь не открывалась, узнать почему можно было одним способом: написать мне в телегу. Я отвечал «сейчас посмотрю» и шёл читать логи. Теперь есть status.turnlist.ru.
Там пять строк: API, база, живая очередь, сайт и уведомления. У каждой — что с ней прямо сейчас и полоска из девяноста дней: зелёный день, жёлтый (работало, но медленно), красный. Раз в минуту сервис проверяет себя сам, и не в стиле «страница отдала 200». Он собирает снапшот очереди Хлебозавода тем же кодом, который рисует вам столы. Дёргает базу. Тянет главную через свой же nginx и смотрит, есть ли в ответе хоть что-то похожее на сайт.
Оговорку я написал прямо в футере страницы: статус собирает сам сервис, с той же машины. Если однажды не откроется и он — значит лежит совсем всё, и это тоже ответ. Платить каждый месяц за внешнюю проверку, чтобы узнавать об этом на секунду раньше, мне жалко.
Полоски пока почти целиком серые: данных за прошлые девяносто дней у меня нет, они начнут набираться с этой ночи. Через месяц там будет видно, сколько раз я что-то ронял. Уже немного неловко.
Когда что-то сломается по-настоящему, инцидент я завожу руками: заголовок, что известно, апдейты по ходу, в конце «решено». Автоматика видит симптом, а объяснить его может только человек. День с крупным инцидентом станет на полосках красным, даже если сами проверки в ту минуту отвечали «всё нормально» — потому что вам от них в тот момент было ни холодно ни жарко.
Заодно два переезда. Сайт больше не живёт на машине у меня дома, он теперь в дата-центре. Для вас не меняется ничего, кроме того, что мой домашний роутер перестал быть единой точкой отказа. А монитор — тот экран для телевизора, который я делал в начале, чтобы очередь висела над столами, — я снёс совсем. Идея была красивая, но за месяц её не открыл ни один человек, включая меня. Живёт то, что открывают с телефона.