SLAtech Vantage читает ошибки из Sentry, Rollbar, Bugsnag и Application Insights, а также упавшие запуски GitHub Actions и конвейеры GitLab CI, и складывает все это в единый поток ошибок проекта. Там они группируются по одной сигнатуре, классифицируются и ранжируются по важности, и из них можно открыть задачу. Все эти интеграции работают только на чтение.
Какие системы поддерживаются и что запрашивает каждая
- Sentry: адрес сервера (sentry.io или собственный), организация, проект и токен доступа.
- Rollbar: название проекта и токен доступа к проекту с правом чтения, а не тот токен, которым приложение отправляет ошибки.
- Bugsnag: идентификатор проекта в том виде, в котором он указан в адресе, и персональный токен.
- Application Insights: идентификатор приложения и API-ключ. По умолчанию данные там хранятся 90 дней, и более старые данные забрать нельзя.
- GitHub Actions и GitLab CI: репозиторий или проект и токен с правом чтения.
Все токены хранятся в зашифрованном виде и больше не показываются. Ошибки забираются раз в час. Экран источников проекта сейчас доступен только оператору системы, поэтому подключение делается через нас.
Одна группировка для всех источников
У каждого трекера ошибок своё понятие "группы ошибок", и эти понятия не совпадают. SLAtech Vantage не использует ни одно из них. Каждое событие получает сигнатуру из трёх частей: модуль, функция и нормализованное сообщение, из которого убраны числа, пути, идентификаторы и даты. События с одинаковой сигнатурой попадают в одну группу со счётчиком.
Так "сколько раз это случилось" считается одинаково в любом проекте и для любого источника. Для запуска CI модулем служит репозиторий, функцией -- имя сценария, а в сообщение входят итог и ветка.
Классификация и важность
Каждая группа по явным правилам относится к настоящей ошибке, внешнему сервису или шуму. По умолчанию группа считается настоящей ошибкой, чтобы нераспознанное не скрывалось. Запуск CI, отменённый вручную, записывается как шум.
Важность (низкая, средняя, высокая, критическая) рассчитывается по числу появлений за последние семь дней:
- шум всегда остаётся низким;
- внешний сервис не поднимается выше средней;
- группа, отмеченная как решенная и вернувшаяся снова, поднимается на уровень;
- затихшая группа сама опускается, когда её появления выходят из окна.
Важность, заданная вручную, важнее расчёта.
Что происходит с группой дальше
- Письмо о новой группе: одно на группу, а не на каждое появление, и отдельное письмо, когда закрытая группа возвращается. Только для настоящих ошибок и только если у проекта задан адрес для оповещений. Если адреса нет, не уходит ничего.
- Задача из ошибки создается одним нажатием. Задача помнит, из какой группы она появилась.
- Решение: у группы можно записать, как её решили, а экран ошибки показывает похожие группы, которые уже решены.
- Коммиты: когда по стеку определяется класс, в котором произошла ошибка, показываются последние коммиты, затронувшие его файл.
Текст ошибки в письме и на экране организации-исполнителя проходит маскирование идентификаторов: в сообщении об ошибке иногда бывает то, что ввёл пользователь, а отправленное письмо уже не вернуть.
Что видит клиент и что не забирается
В портале клиент видит одну плитку: сколько групп настоящих ошибок активно сейчас, или что всё в порядке. Сам список ошибок он не видит. Организация-исполнитель видит группы с замаскированным текстом.
- Собственные группы, заметки и статусы трекера ошибок не забираются, и в него ничего не записывается.
- Успешный запуск CI не сохраняется.
- Отдельное событие хранится 30 дней. Группа и её счётчик остаются и после этого.
Частые вопросы
Какие трекеры ошибок поддерживает SLAtech Vantage?
Почему группы не совпадают с группами в Sentry?
Кто получает оповещение о новой ошибке?
Видит ли клиент ошибки?
Хотите видеть ошибки из нескольких систем в одном списке? Можно начать с пробного периода.
Начать бесплатно