Перейти к содержанию

Концепции RCA

Инциденты и проблемы

Инцидент -- аномалия в среде. Проблема -- сущность Dynatrace, представляющая инцидент, результат автоматического анализа первопричин и влияния. Проблемы могут охватывать несколько зависимых компонентов.

Dynatrace объединяет все события Davis с одной первопричиной в одну проблему, предотвращая избыточное оповещение.

События Davis

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

Анализ первопричин

Использует всю контекстную информацию (топология, транзакции, уровень кода) для выявления событий с общей первопричиной.

Одной временной корреляции недостаточно. Dynatrace анализирует взаимозависимости во времени, процессах, хостах, сервисах, приложениях и по вертикальным/горизонтальным топологическим связям.

Диаграмма корреляции

Dynatrace ранжирует участников первопричины и позволяет детализировать до уровня исходного кода (сбойные методы, активность GC).

Анализ дерева отказов

Построен на информации о зависимостях из Smartscape, OneAgent и облачной интеграции. Позволяет проанализировать миллионы зависимостей для определения наиболее вероятной первопричины.

Анализ влияния

Определяет затронутые входные сервисы/приложения, общий "радиус поражения", затронутые SLO и количество затронутых реальных пользователей.

Жизненный цикл проблемы

  1. Обнаружение инцидента инфраструктуры -- создание проблемы, уведомление.
  2. Появление деградации на уровне сервисов.
  3. Рост числа затронутых сервисов.
  4. Влияние на пользовательский опыт (приложения).
  5. Корреляция с исходной инфраструктурной проблемой.

Проблема активна, пока есть сущности в аномальном состоянии.

Временные характеристики

  • Каждое событие Davis имеет свои метки времени и окна наблюдения.
  • Проблема создаётся по метке времени окончания анализа события.
  • Период повторного открытия закрытой проблемы -- до 30 минут.
  • После 90 минут открытой проблемы -- новые события не объединяются, создаётся новая проблема.
  • Если интервал между первыми событиями > 5 минут -- две разные проблемы.

Дублирующиеся проблемы

При асинхронном поступлении данных возможны дубликаты с одной первопричиной. После получения полной информации дубликаты помечаются dt.davis.is_duplicate=true. Допускается ради быстрого оповещения.

Состояние обработки (Processing)

Новая проблема входит в состояние Processing (~3 минуты) для проверки необходимости объединения. Оповещения не отправляются до изменения состояния.

Для немедленных оповещений используйте пользовательские оповещения с метрическими событиями (dt.davis.trigger_delay=0, dt.davis.analysis_time=0).