Состояние видно только в логах сервера
Ошибки пишутся в файл, который никто не открывает. Первым тревогу поднимает клиент, у которого не прошёл платёж, а не система.
Выберите тему — соберём контекст
Настраиваем наблюдаемость на всех уровнях: доступность и время ответа, трассировка запросов, медленные SQL, ошибки в браузере. Алерт приходит дежурному инженеру вместе с контекстом, а не в виде сообщения «сайт не работает».
P95 времени ответа
оформление заказа
Проверки проходят
Внешние проверки · каждые 30 секунд
Алерты дежурному
P95 API для партнёров 1,4 с — близко к порогу 1,5 с
предупреждение · рабочее время
Медленный запрос к таблице заказов: 2,8 с, запрос в цикле
инцидент · дежурный, 5 мин
Пример сводки. Показатели вашей системы и пороги определим на инвентаризации — за 3–5 дней.
Расскажите, из каких сервисов состоит продукт и что уже вызывает тревогу. Предложим набор метрик, порогов и алертов под ваши критичные сценарии.
Инвентаризация
3–5 дней
Метрики и пороги
1–2 недели
Алерты и дежурство
3–5 дней
Оставьте контакт — вернёмся с набором метрик, порогов и алертов под ваши критичные сценарии.
Собираем типичные причины из проектов, где мониторинг либо отсутствовал, либо был настроен формально.
Ошибки пишутся в файл, который никто не открывает. Первым тревогу поднимает клиент, у которого не прошёл платёж, а не система.
Страница каталога открывается семь секунд, потому что запрос выполняется в цикле. Проблема растёт вместе с базой и однажды становится отказом.
Уведомления сыплются десятками в час, включая «диск занят на 62%». Через неделю их перестают читать, и настоящий инцидент проходит незамеченным.
«Стало медленнее» — единственная формулировка проблемы. Непонятно, когда началась деградация, какой релиз её вызвал и насколько хуже стало на самом деле.
Сервер отвечает за 200 миллисекунд, а страница у пользователя грузится шесть секунд из-за тяжёлого скрипта и картинок. Метрики этого не видят.
Ограничения по одновременным соединениям, лимиты воркеров очередей и параметры пула соединений к базе проверяются не заранее, а под реальной нагрузкой.
Набор уровней подбираем под архитектуру: монолит на виртуальной машине и набор сервисов в Kubernetes требуют разных метрик.
Проверяем сервис так, как его видит пользователь, а не только с точки зрения сервера.
Что настраиваем
Измеряем время обработки запросов внутри приложения и раскладываем его по этапам.
Что настраиваем
Чаще всего узкое место находится именно здесь, а не в коде приложения.
Что настраиваем
То, что реально чувствует пользователь, включая мобильные устройства и слабые сети.
Что настраиваем
Среднее арифметическое — самый обманчивый показатель производительности: оно остаётся приемлемым, пока часть пользователей уже ждёт секунды. Ниже — модель, на которой это видно за десять секунд, и объяснение, почему порог ставится на P95.
1 000 запросов, быстрые — 100 мс.
Состав запросов
Медленных запросов: 60 из 1 000
Среднее
574 мс
P50 (типичный опыт)
100 мс
P95 (кому не повезло)
8 с
P99 (худший опыт)
8 с
Среднее осталось в норме, а P95 и P99 уже далеко за порогом: часть пользователей ждёт секунды. На графике среднего этого не видно.
Это модель арифметики перцентилей, а не данные вашей системы: 1000 запросов, быстрые — 100 мс. На реальном трафике порог ставится на P95 значимого маршрута.
Показать это на моей системеСреднее арифметическое скрывает проблемы: если тысяча запросов выполняется за 100 миллисекунд, а десять — за 30 секунд, среднее останется приемлемым, а десять пользователей уйдут. Поэтому мы смотрим на перцентили: P50 показывает типичный опыт, P95 и P99 — опыт тех, кому не повезло, и именно они чаще всего становятся источником жалоб и оттока.
Практическое правило: порог алерта ставится на P95 значимого маршрута, а не на среднее. Если P95 оформления заказа вырос с 800 миллисекунд до трёх секунд, реагировать нужно немедленно, даже когда среднее по системе не изменилось.
Усталость от алертов — главная причина, по которой мониторинг формально есть, а пользы нет. Мы разделяем поводы по срочности и оставляем только те уведомления, по которым есть что делать.
Требует немедленного вмешательства: сценарий не работает или работает с грубой ошибкой.
Будит дежурного
Отклонение от нормы без отказа: растёт время ответа, приближается порог диска.
Плановая работа в рабочие часы
Метрика для дашборда и разборов. Повода для действия нет.
Никого не будит
Усталость от алертов — главная причина, по которой мониторинг формально есть, а пользы нет. Лечится это дисциплиной: каждый алерт должен быть либо устраним действием, либо удалён. Если по уведомлению нельзя ничего сделать, это не алерт, а метрика для дашборда.
Мы также разделяем поводы: инцидент требует немедленного вмешательства, предупреждение — плановой работы в рабочее время, информационное сообщение не будит никого. Отдельно настраиваем подавление связанных уведомлений, чтобы падение базы не порождало тридцать алертов от всех зависимых сервисов.
Порядок работ выстроен так, чтобы уже на второй неделе у вас были не графики, а работающие алерты и первые найденные узкие места.
Составляем список сервисов, их владельцев и критичных сценариев. Договариваемся, что считаем нормой для каждого показателя.
Подключаем сбор метрик приложения, базы, очередей и внешних проверок. Настраиваем хранение с нужной глубиной и разумной стоимостью.
Формулируем правила так, чтобы каждый алерт требовал действия. Настраиваем маршрутизацию в дежурный канал и порядок эскалации.
Разбираем накопленные данные, устраняем найденные узкие места и подтверждаем эффект измерениями до и после.
Наблюдаемость без дежурства отвечает только на вопрос «что случилось». Чтобы реагировать до клиента, нужен регламент реакции — пакеты и приоритеты опубликованы на странице мониторинга безопасности.
от 55 000 ₽/мес
Реакция до 4 часов
До 10 сервисов
Минимальный контур контроля: сбор событий, сканирование уязвимостей и ежемесячный отчёт для службы ИБ.
от 120 000 ₽/мес
Реакция до 30 минут
До 30 сервисов, 24/7
Постоянный контроль с круглосуточным дежурством, корреляцией событий и отслеживанием закрытия уязвимостей.
от 220 000 ₽/мес
Реакция до 15 минут
Требования регуляторов, чувствительные данные
Для организаций с повышенными требованиями: расширенное покрытие, регламенты под проверки, работа с персональными данными.
Пакеты и цены ниже — из опубликованного описания услуги мониторинга. Точную стоимость называем после инвентаризации: она зависит от числа сервисов, объёма данных и режима реакции.
| Приоритет | Что произошло | Реакция | Восстановление |
|---|---|---|---|
| P1 — Атака или утечка | Признаки активной компрометации, доступа к данным или шифрования | 15 минут | локализация до 2 часов |
| P2 — Подозрительная активность | Аномальные входы, эскалация прав, необычные запросы к данным | 30 минут | разбор до 8 часов |
| P3 — Уязвимость высокой критичности | Найдена уязвимость, эксплуатация которой возможна | 4 часа | план закрытия до 3 дней |
| P4 — Замечания и рекомендации | Находки среднего и низкого риска, вопросы hardening | 1 рабочий день | по плану работ |
Работаем в вашем стеке, если он уже есть. Направление «Мониторинг и логирование» с техническими деталями — на отдельной странице раздела DevOps.
Технические детали
Мониторинг не заменяет администрирование и не отменяет работу над продуктом. Ниже — честное разделение, чтобы ожидания совпали с результатом.
Первые находки обычно появляются в течение первых двух недель: как правило это запросы в цикле, отсутствующие индексы и неэффективное кэширование. Эффект измерим сразу, потому что базовые значения P95 сняты до изменений.
Зависит от уровня детализации. Внешние проверки доступности работают вообще без доступа к инфраструктуре. Метрики приложения, трассировка запросов и медленные SQL требуют либо агента, либо подключения библиотеки в код, либо чтения данных из уже существующих источников — журнала базы, веб-сервера. Мы подбираем минимально инвазивный вариант и согласуем его до начала работ.
Нет, мы дополняем. Администратор занимается инфраструктурой, обновлениями операционной системы и повседневными задачами. Мы берём на себя наблюдаемость, разбор производительности приложения, анализ запросов к базе и подготовку рекомендаций. При этом часть рутины — реакция на алерты по доступности — может быть передана нам вместе с дежурством.
Первые находки обычно появляются в течение первых двух недель: как правило это запросы в цикле, отсутствующие индексы и неэффективное кэширование. Эффект от их устранения измерим сразу, потому что у нас уже есть базовые значения P95 до изменений. Более глубокие улучшения — переработка тяжёлых сценариев, вынос фоновых операций — планируются отдельными задачами.
Стоимость зависит от объёма данных и глубины хранения. Мы специально настраиваем хранение детальных метрик на недели, а агрегированных — на месяцы, и ограничиваем сбор шумных показателей. На практике для среднего проекта расходы на хранение данных мониторинга оказываются ниже стоимости одного часа простоя, а часть находок снижает нагрузку и тем самым расходы на инфраструктуру.
С инвентаризации: списка сервисов, их владельцев и критичных сценариев. За 3–5 дней мы фиксируем, что считаем нормой для каждого показателя, и только после этого подключаем сбор метрик. Порядок именно такой, потому что метрика без порога не даёт ответа на вопрос «нужно ли что-то делать».
Инвентаризация — 3–5 дней, сбор метрик приложения, базы, очередей и внешних проверок — 1–2 недели, алерты и дежурство — ещё 3–5 дней. То есть уже на второй неделе у вас не графики, а работающие алерты и первые найденные узкие места. Оптимизация дальше идёт ежемесячно по накопленным данным.
Если сервис установлен и им пользуются, половина задачи решена — мы работаем с тем, что есть, и не предлагаем менять инструмент ради инструмента. Обычно не хватает другого: порогов, привязанных к критичным сценариям, алертов, которые требуют действия, и регулярного разбора находок. Инструмент без регламента показывает графики, но не отвечает на вопрос, что делать.
Ежемесячно: что найдено, что устранено, как изменились показатели до и после, какие узкие места остаются и что предлагаем делать дальше. Отдельно — разбор каждого инцидента: что произошло, почему, что меняем, чтобы не повторилось.
Начинать нужно не с технических показателей, а с пользовательских сценариев. Если для бизнеса критично оформление заказа, то метрика номер один — доля успешных оформлений и время этого сценария, а не загрузка процессора. Технические метрики нужны для объяснения причины, но сигналом должен быть показатель, связанный с выручкой или обслуживанием клиентов.
Второй принцип — ограничить число метрик на дашборде. Мы выносим на главный экран не более десяти показателей и добавляем к каждому порог, при котором дежурный обязан действовать. Всё остальное живёт в детальных панелях и используется в разборе, а не в постоянном наблюдении.
Расскажите, из каких сервисов состоит продукт, — предложим набор метрик и алертов под ваши критичные сценарии.
Полезное рядом: поддержка и обслуживание, управляемые услуги, мониторинг и логирование, контакты.
Опишите, из каких сервисов состоит продукт и что уже вызывает тревогу, — вернёмся с набором метрик, порогов и алертов.
Cookie и аналитика
Мы используем необходимые cookie для работы сайта и форм. Аналитические cookie (Яндекс.Метрика, включая запись сессий) подключаем только с вашего согласия — от него можно отказаться. Подробнее: Политика использования cookie и обработка персональных данных.