Папа БУ Попробовать 3 дня

Мониторинг бота

5 мин чтения · инструкция · для опытных · обновлено 2026-08-20

Короткий ответ: мониторинг бота строится не вокруг сервера, а вокруг результата. Главный вопрос не «работает ли процесс», а «ушли ли ответы покупателям за последний час». Бот может быть запущен, отвечать двухсотым кодом на проверки и при этом молчать в чатах — и снаружи это будет выглядеть как пропавший продавец.

Это самый дорогой вид поломки. Покупатель не пишет в поддержку и не жалуется, он просто уходит к следующему объявлению. Вы узнаёте о простое не по алерту, а по пустому дню в статистике — через сутки, когда деньги уже потеряны. Ниже — что писать в логи, какие метрики смотреть и как настроить оповещения, чтобы узнавать о поломке первым.

Почему проверки «жив ли сервер» недостаточно

Классическая проверка доступности отвечает на вопрос, отзывается ли ваш адрес. У бота на чатах есть минимум пять способов сломаться, не задев эту проверку:

  • истёк или отозван токен доступа — площадка перестала принимать запросы;
  • провайдер модели вернул ошибку или упёрся в лимит — ответ не сгенерирован;
  • изменился формат уведомлений — вебхуки приходят, но не разбираются;
  • очередь встала — сообщения приняты и лежат необработанными;
  • бот отвечает, но чепухой — формально всё зелёное, фактически хуже, чем молчание.

Отсюда правило: следить надо за исходом, а не за инфраструктурой.

Четыре метрики, которых достаточно

Не стройте панель на сорок графиков. Для чат-бота хватает четырёх чисел.

1. Ответы за последний час. Сколько сообщений бот реально отправил покупателям. Ноль в рабочее время — авария.

2. Время до первого ответа. Медиана и худшие десять процентов. Средняя врёт: один зависший диалог теряется в среднем, но не в перцентиле. Почему это ключевой показатель, разобрано в материале как отвечать на Авито быстро.

3. Доля ошибок. Отдельно по площадке и отдельно по модели — это разные причины и разные действия.

4. Доля эскалаций. Сколько диалогов ушло человеку. Резкий рост означает, что бот перестал понимать входящие; резкое падение до нуля — что он перестал звать на помощь и, скорее всего, отвечает наугад.

Что писать в логи

Лог нужен не для красоты, а чтобы через неделю разобрать конкретную жалобу: «покупателю ответили не то». Значит, по каждому событию должно быть видно:

время, идентификатор диалога и объявления
что пришло: тип события, длина сообщения
какое решение принято: ответить / промолчать / эскалировать
какой моделью, сколько заняло, был ли повтор после ошибки
что отправлено: текст ответа

Три правила:

  • Один идентификатор через всю цепочку. Иначе связать входящее сообщение с исходящим ответом в общем потоке невозможно.
  • Структурированный формат. Строки вида «всё ок» бесполезны, по ним нельзя посчитать.
  • Никаких секретов. Токены и ключи в логах — это утечка, а не отладка. Персональные данные покупателей храните по минимуму и с понятным сроком.

Оповещения: три уровня

Смысл оповещений — разбудить вас ровно тогда, когда это оправдано, и молчать в остальное время. Алерт, который срабатывает каждый день, перестают читать через неделю.

Красный — будить. Ноль ответов за час в рабочее время. Ошибки авторизации. Сервис недоступен снаружи. Такое уходит в мессенджер на телефон, немедленно.

Жёлтый — посмотреть сегодня. Доля ошибок выше обычной, время ответа выросло вдвое, очередь растёт. Достаточно сводки раз в несколько часов.

Зелёный — почитать в понедельник. Недельная сводка: сколько диалогов, сколько эскалаций, какие вопросы бот не понял. Это не про аварии, а про доработку промптов.

Отдельно стоит настроить «сторожа тишины»: если за N минут не было ни одного входящего события, хотя обычно они есть, — сообщить. Молчание входящих часто означает поломку на стороне подписки на уведомления.

Проверка живым сообщением

Самая надёжная проверка — синтетическая. Раз в час бот получает искусственное событие и должен пройти весь путь: разобрать, обратиться к модели, сформировать ответ (в тестовом режиме — не отправляя его покупателю) и записать результат.

Это единственный способ поймать поломки середины цепочки: истёкший ключ, изменившийся формат, зависший провайдер. Проверки отдельных компонентов такое пропускают.

Всё описанное — контур, который в готовых сервисах уже собран: у бота, который отвечает вашими словами, дежурство и оповещения о сбоях входят в подписку, и настраивать их отдельно не нужно.

Что делать при аварии

План стоит написать заранее, а не сочинять ночью:

  1. Понять, молчит бот или врёт. Первое — техническая авария, второе — проблема промпта.
  2. Включить запасной режим. Простое честное сообщение с обещанием ответить в ближайшее время лучше пустоты. Тон подскажут ваши шаблоны ответов.
  3. Уведомить того, кто отвечает руками. На время аварии первая линия — человек.
  4. Разобрать причину по логам, а не по памяти.
  5. Добавить проверку, которая поймала бы это раньше. Каждая авария должна оставлять после себя новый датчик.

Стоимость простоя считается просто: число обращений в день, умноженное на стоимость клиента. Обычно это быстро объясняет, почему час на настройку оповещений окупается.

Когда всё это избыточно

Мониторинг тоже стоит времени, и в части случаев он не нужен.

Бот на тестовом контуре. Пока живых диалогов нет, хватает чтения логов вручную.

Единичные обращения. При паре сообщений в неделю проще смотреть в чаты глазами: вы заметите тишину раньше любого алерта.

Вы всё равно не сможете починить. Оповещение в три часа ночи без возможности что-то сделать даёт только испорченный сон. Тогда честнее сузить обещание: бот работает днём, ночью отвечает человек утром.

Бот отвечает не покупателям. Для внутренних задач нет цены простоя, и требования к оповещениям другие.

Коротко

Мониторинг бота начинается с одного числа — сколько ответов ушло покупателям за последний час. Дальше добавляются время до ответа, доля ошибок и доля эскалаций. Логи пишутся структурно, с одним идентификатором через всю цепочку и без секретов. Оповещения делятся на три уровня, и будить должен только красный. Синтетическая проверка раз в час ловит то, что не ловят остальные.

Настроить этот контур несложно, но поддерживать его придётся столько же, сколько живёт бот. Если проще, чтобы за ответами и их доставкой следил кто-то другой, — «Папа БУ» отвечает покупателям за минуту, показывает исходы диалогов и передаёт готовых человеку. Три дня бесплатно.

Если решение под свой бизнес нужно, а разбираться самому некогда — напишите мне в Telegram: @artem_sergeevic. Я делаю такие сервисы на заказ: обсудим задачу и честно разберём, что в ней действительно нужно, а что можно не делать вовсе.

Пока вы читаете, кто-то отвечает вашему покупателю. «Папа БУ» отвечает в чатах Авито за минуту вашими словами и передаёт вам тех, кто готов к сделке.

Попробовать 3 дня бесплатно

Частые вопросы

Достаточно ли проверять, что сервер жив?
Нет. Сервер может работать, а бот при этом молчать из-за истёкшего токена или ошибки провайдера модели. Проверять нужно результат — что ответы уходят покупателям.
Какая метрика главная?
Число отправленных ответов за последний час. Если оно упало до нуля в рабочее время, это авария, независимо от того, что показывают остальные графики.
Куда лучше присылать оповещения?
Туда, где вы гарантированно увидите их ночью — обычно мессенджер на телефоне. Письмо на почту для аварий не годится.
Что нельзя писать в логи?
Токены доступа, ключи API и лишние персональные данные покупателей. Хранить стоит идентификаторы диалогов и факты событий, а не всё подряд.
Помогла статья?

Ответ видят другие читатели: у полезных статей на витрине появляется оценка. А те, что не помогают, мы переписываем — по этой кнопке и решаем, какие именно.