В какие часы падают сервисы: как разглядеть системные сбои за шумом в журнале заявок
Большинство команд смотрят на сбои в моменте - через графики мониторинга. Но мониторинг показывает только сам «пожар», а не его первопричину. В результате регулярные поломки нередко списываются на случайность, а ресурсы команды больше тратятся на тушение симптомов вместо устранения источника проблемы.
Задача
Более глубокий разбор времени инцидентов позволяет получить от журнала данных не просто статистику, а дополнительную практическую пользу:
- Развести конфликтующие процессы. Отличить разовую аварию от регулярного сбоя, вызванного «наложением» фоновых задач (резервное копирование, обмен данными, релизные окна, тяжёлые ночные расчёты).
- Провести аудит качества данных и процессов. Выявить системные искажения в учёте - например, технический спам от сканеров и проверок, падающий в журнал одной секундой, - и учесть ложные утренние пики, когда ночные сбои регистрируют только в 09:00.
- Получить аргументы для подрядчиков и графиков смен. Опереться на жёсткие факты (число недель, система, конкретный час) при пересмотре SLA с вендорами или при формировании дежурств, вместо того чтобы распределять людей наугад.
Алгоритм описательной аналитики автоматически разбирает журнал инцидентов, фильтрует единичные выбросы и показывает, где кроется ошибка расписания, а где - естественный рабочий ритм.
Как алгоритм ищет закономерности
Чтобы понять реальную картину инцидентов, алгоритм использует два метода описательной аналитики.
- Оценка долей времени недели: когда нужна команда
Основа: все инциденты делятся на три группы: стандартные рабочие часы (будни с 9:00 до 18:00), вечер и ночь в будни, выходные. В расчёт берутся даже незакрытые заявки, так как время их возникновения уже зафиксировано.
В чём суть: рабочие часы будней составляют всего 27% от времени всей недели. Если на этот период приходится, допустим, 43% инцидентов, значит, оставшиеся 57% сбоев происходят тогда, когда в офисе никого нет. Уже есть повод задуматься, как правильно распределить дежурных и работу.
- Поиск «необычного часа»: где спрятан системный сбой
Самый загруженный час - это ещё не аномалия. Днём всегда больше активных пользователей и заявок. Поэтому алгоритм ищет не максимумы, а отклонения от привычного ритма.
Сравнение со своей нормой: ночь четверга сравнивается с ночами других будних дней, а суббота - с воскресеньем. Если каждую неделю в четверг в 02:00 заявок вдвое больше, чем в среду или пятницу, - это уже расписание, а не просто нагрузка.
Проверка на повторяемость: разовая крупная авария, сгенерировавшая 30 заявок за 60 минут, не признаётся системой как закономерность. Аномалия фиксируется, только если сбои в этот час повторяются в разные недели.
Поиск ежедневных пиков: отдельно выявляется час, который каждый день стабильно загруженнее соседних. Так выглядят ресурсоёмкие ежедневные задачи, например резервное копирование или ночные расчёты.
Честность данных: если график сбоев представляет собой случайный разброс, система не будет выдумывать «худшее время» искусственно. Отчёт прямо укажет: «необычных часов нет».
Работа с реальными данными: ловушки учёта
Журналы инцидентов не бывают идеальными. Задача алгоритма - распознавать нужные артефакты сбора данных и не давать ложных срабатываний там, где имеет место человеческий или технический фактор.
- Как алгоритм обрабатывает искажения в данных
Разовая крупная авария: шквал из десятков заявок за один час система классифицирует как единичный инцидент, а не как повторяющуюся закономерность. Искать расписание здесь не нужно.
Технический спам одной минутой: если сотни записей появляются ровно в 02:00, система определяет это как время записи скриптом или автоматической проверкой, а не время поломки, и не ищет по этим записям закономерность.
Утренние пики вместо ночных инцидентов: если сервис упал ночью, но заявку зарегистрировали только с приходом сотрудников в 9:00, возникает ложный всплеск. Отчёт предупредит о такой вероятности, чтобы команда могла внедрить автоматический ночной мониторинг для проблемных сервисов.
Ограничения форматов: если в выгрузке присутствуют только даты, система не выдумывает фиктивный час «00:00», а проводит анализ строго по дням недели. Если время записано в UTC - напомнит о необходимости сдвига на локальный часовой пояс.
Матрица решений: что делать при обнаружении аномалий
| Характер аномалии | Возможная причина | Действия команды |
|---|---|---|
| Один и тот же день и час в неделюнапример, четверг 02:00 | Еженедельный обмен, формирование тяжёлого отчёта, окно релизов, плановые работы провайдера | Развести конфликтующие задания по времени; добавить автоматическую проверку после релиза; пересогласовать окно с вендором |
| Каждый день в одно и то же времянапример, 04:00 | Резервное копирование, ночные расчёты, перезапуск пула служб | Распределить задания планировщика; выделить дополнительные мощности под конкретное ночное окно |
| Пики в конце рабочих смен или недель | Работа «теневого ИТ»: запуск тяжёлых пользовательских макросов, массовые выгрузки данных бизнес-отделами | Выявить инициатора (по логам базы данных или балансировщика), оптимизировать запросы, перенести выполнение на нерабочее время |
| Регулярные всплески в час, когда никаких заданий нет | Внешняя автоматизированная активность: агрессивный парсинг, подбор паролей, несанкционированные интеграции через API | Ограничить частоту запросов (Rate Limit), обновить правила межсетевого экрана (WAF), заблокировать аномальные IP-адреса |
| Обычный ритм без закономерностей | Обычная нагрузка: днём больше, ночью меньше | Отказаться от поиска несуществующих проблем в расписании систем. Переключиться на графики дежурств и автомасштабирование ресурсов (Auto Scaling) под дневные пики |
Пример 1. Скрытый сбой по расписанию
Ситуация: торговая сеть с интернет-магазином регистрирует около 1100 инцидентов в год. Сотрудники жалуются, что ночной обмен данными часто падает, но на общем фоне этого не видно.
Что показал анализ: в четверг с 02:00 до 03:00 фиксируется 37 сбоев при норме в 4 для этого времени. Ситуация повторялась 32 недели из 52. Главный источник - 1С:ERP.
Результат: вместо размытых споров команда получает точное время и систему. Перенастройка расписания фонового задания устраняет более 30 регулярных ИТ-аварий в год и избавляет склад от утренних простоев.
Пример 2. Оптимизация дежурств вместо поиска «призраков»
Ситуация: руководитель поддержки хочет изменить график смен, подозревая регулярные всплески нагрузки по ночам.
Что показал анализ: на рабочие часы (27% времени недели) приходится 43% инцидентов. Остальные 57% распределены по вечерам, ночам и выходным. Ни один час не выбивается из общей нормы - «необычных часов» нет.
Результат: искать «худшее окно» и ломать график людей под случайный разброс не имеет смысла. Стоит заняться регламентом дежурств: чётко определить, какие из этих 57% сбоев требуют немедленного подъёма инженера ночью, а какие могут ждать утра.
Как выбрать окно для плановых работ
Плановые работы (обновления, миграции, замена оборудования) рискованны сами по себе. Если поставить их туда, где и так регулярно что-то падает, два сбоя сложатся, и потом не понять, что уронило систему. Отчёт помогает выбрать окно по трём признакам:
- Не в найденный необычный час. Если отчёт нашёл «четверг 02:00» или «каждый день 04:00», в этот час уже работает какое-то задание. Работы поверх него спорят с ним за ресурсы, а разобрать потом, кто кого уронил, трудно.
- Туда, где сбоев мало и есть кому чинить. На тепловой карте отчёта светлые клетки - часы, когда сбоев меньше всего. Ночь и выходные обычно тише, но и людей меньше: доли по периодам недели показывают, сколько сбоев придётся на окно, а ваш график дежурств - кто будет на месте, если работы пойдут не так.
- С поправкой на время регистрации. Если в журнале время заявки, а не время поломки, ночной сбой выглядит утренним. Тихая ночь в отчёте может значить, что ночью просто никто не смотрел.
Так выглядит тепловая карта в отчёте: строки - дни недели, столбцы - часы. Чем темнее клетка, тем больше сбоев; светлые клетки - кандидаты для плановых работ. Пунктирная рамка - будни с 9 до 18. Красная рамка - час, который выбивается из обычного ритма (здесь четверг 02:00, 37 сбоев): туда работы не ставить.
Чего отчёт не знает: график дежурств, пики бизнеса (распродажи, закрытие месяца) и цену работ в нерабочее время. Эти данные добавляете вы - и из тихих часов остаются те, где есть люди и нет пика продаж.
Итог: как применять данные в работе
Анализ времени сбоев - это инструмент управления ресурсами, который напрямую влияет на три направления:
- Умное расписание людейГрафик смен формируется под реальную долю инцидентов в разные периоды недели, а не под иллюзию, что «ночью всё спокойно».
- Безопасное расписание системРелизы, бэкапы и тяжёлые выгрузки не запускаются в часы, которые алгоритм уже подсветил как проблемные. Найденная аномалия - первый кандидат на аудит и перенос расписания.
- Объективный диалог с подрядчикамиЕсли выявленный «проклятый час» стабильно совпадает с окном работ провайдера, на руках есть точная фактура: количество инцидентов, число недель, пострадавшие системы. Это аргумент для переноса окна обслуживания или пересмотра SLA в договоре.