Есть три стадии развития
1. Мониторинга в продукте нет. Если что-то важное сломалось — тебе пользователи обязательно про это скажут. К слову, говорят не все и не всегда. Я встречал продукты, где о падение продакшна команда узнавала через сутки.
2. Мониторинги в продукте есть и разные. Внутренние мониторинги проверяют сервера и базу данных. Внешние мониторинги присматривают за сайтом целиком. Всё логируется, все бэкапируется. О проблемах в продакшене команда узнает заранее и реагирует быстро.
3. Проверяется не только сам продукт, но и third-party solutions. Иногда партнерские сервисы также важны, как и основной продукт. А вот что они сломались — не всегда очевидно. Иногда можно с ужасом узнать, что уже пару месяцев ничего не работает.
Поясню на примере кассовых чеков. Каждая покупка должна пробивать чек, но главное, там целая цепочка:
— Продукт говорит платежной системе сделать платеж.
— Платежка говорит онлайн кассе (другая компания).
— Касса передает данные оператору фискальных данных (третья компания).
— ОФД передает данные в налоговую (государственная структура).
Сломалось что-то у нас — мы узнаем быстро. Что-то сломалось у первого партнера — когда как, зависит от настроек. Но в теории тоже можем узнать. Что-то сломалось на 3 или 4 шаге — узнать нереально и автоматизировать сложно.
Надо всегда исходить из того, что партнеры могут плохо сделать свою работу и про это никому не сказать. Однажды ОФД перестал передавать наши чеки в налоговую, а когда мы это обнаружили, долго отрицал вину. В другой раз в онлайн кассе перепутали номер версии ПО, чеки пробивались, но налоговая их считала ошибочными. В третий раз оказалось, что один партнер из цепочки лежал с 500 ошибкой и все остальные на это никак не реагировали.
Достигнуть третьего уровня мониторинга сложно, долго и дорого. Начните с того, что опишете в документации все такие цепочки и научитесь отслеживать каждый этап в ручном режиме. А то знаю я вас, считаете, что есть ваш продукт, а за ним какая-то непостижимая магия.