Для чего нужен раздел
Подключите CI/CD и систему инцидентов, затем укажите, какие события относятся к каждому сервису. Шаблоны сопоставляют имена репозиториев, workflow и окружений. Точные настройки помогают считать рабочие развёртывания отдельно от сборок и тестовых окружений.
Когда использовать
- До того, как впервые открыть раздел DORA.
- Когда новый сервис начинает деплоиться самостоятельно.
- Когда число развёртываний не совпадает с историей выпусков в CI/CD.
Первые шаги
- 1Подключите CI/CD-провайдера: GitHub Actions, GitLab CI, Bitbucket Pipelines, Jenkins, CircleCI или Azure Pipelines.
- 2Подключите инструмент для инцидентов: PagerDuty, Opsgenie, VictorOps или собственный вебхук.
- 3Создайте сервис и задайте шаблоны репозиториев, workflow и окружений; подстановочные символы поддерживаются.
- 4Синхронизируйтесь и проверьте на странице DORA, что число деплоев попадает в ожидаемый диапазон.
Настройки
| Настройка | Что делает | Как настроить | Типичная ошибка |
|---|---|---|---|
| Шаблоны репозиториев | Сопоставляют деплои сервису по имени репозитория. | Укажите имя репозитория или подходящий только этому сервису шаблон, например org/payments-*. | Использовать шаблон, который включает репозитории другого сервиса. |
| Шаблоны workflow | Ограничивают, какие CI-запуски считаются деплоями. | Выберите workflow, который развёртывает приложение. Используйте deploy-* только если ваши названия действительно ему соответствуют. | Совпадение со всеми workflow: каждая сборка и прогон тестов засчитываются как деплой. |
| Шаблоны окружений | Ограничивают, какие окружения учитываются. | Для рабочих метрик выберите production и проверьте точное название окружения в CI/CD. | Оставить открытым — деплои на staging раздувают частоту и укорачивают время прохождения. |
Пример использования
Ситуация: В примере DORA показывает 40 развёртываний в день, хотя рабочих выпусков было значительно меньше.
- 1Откройте описание сервиса и прочитайте шаблоны workflow и окружения.
- 2Укажите рабочее окружение и workflow развёртывания, исключив сборки и тесты.
- 3Повторите синхронизацию и сравните ленту с историей рабочих развёртываний в CI/CD.
Что станет понятно: В расчёт входят развёртывания нужного сервиса и окружения; число можно проверить по CI/CD.
Частые вопросы
Обязательно ли описывать сервисы?
Настройте сервисы, чтобы отдельно считать их развёртывания и связанные инциденты. Иначе общие показатели могут смешивать системы с разными графиками и требованиями.
Что делать, если в инструменте инцидентов нет понятия сервиса?
Можно использовать поддерживаемый вебхук. Проверьте, что передаваемые данные позволяют связать инцидент с сервисом и развёртыванием; без этой связи показатели сбоев и восстановления будут неполными.
Почему доля неудачных изменений равна нулю?
За выбранный период может не быть развёртываний со связанными сбоями. Также проверьте подключение инцидентов, даты и привязку к сервисам и развёртываниям: отсутствие этих данных нельзя считать доказательством отсутствия сбоев.
Практические советы
- После изменения шаблонов пересчитайте сравниваемые периоды одинаково: набор вошедших событий может измениться.
- Сначала сверьте один сервис с данными CI/CD и инцидентов. Затем настройте остальные по их собственным именам и окружениям.