Модель Evidence и корреляция

Неизменяемая модель Evidence с оценкой качества и корреляция, связывающая родственные симптомы с вероятной первопричиной с явным уровнем уверенности.

Модель Evidence

Что такое Evidence

Evidence — структурированное доказательство, на основании которого система создаёт, обновляет или верифицирует Issue.

Evidence может быть:

  • автоматически рассчитанным;
  • полученным от устройства;
  • импортированным из внешней системы;
  • добавленным пользователем;
  • сформированным профильным отчётом;
  • приложенным в виде документа, фото или комментария.

Структура Evidence

Типы Evidence

ТипПример
detector_findingрезультат детектора
telemetry_sampleфрагмент телеметрии
archive_windowсводка по архивному периоду
event_logжурнал событий устройства
configuration_snapshotснимок конфигурации
operator_commentкомментарий диспетчера
field_reportакт или отчёт полевой бригады
photoфотография оборудования
external_ticketссылка на внешнюю заявку
verification_resultподтверждение устранения
root_cause_confirmationподтверждение первопричины
knowledge_applicationприменение статьи базы знаний

Качество Evidence

Для каждого Evidence рассчитывается качество:

Qevidence=wcC+wfF+wsS+wtTQ_{evidence} = w_c C + w_f F + w_s S + w_t T

где:

  • CC — completeness, полнота;
  • FF — freshness, актуальность;
  • SS — consistency, согласованность;
  • TT — trust, доверие к источнику;
  • wc+wf+ws+wt=1w_c + w_f + w_s + w_t = 1.

Рекомендуемые базовые веса:

КомпонентВес
wcw_c — полнота0.30
wfw_f — актуальность0.25
wsw_s — согласованность0.25
wtw_t — доверие к источнику0.20

Результат нормируется в диапазон от 0 до 1.

Неизменяемость Evidence

Исходное Evidence не редактируется задним числом. Исправление создаёт новую версию или отдельное корректирующее Evidence.

Это обеспечивает:

  • аудит;
  • воспроизводимость;
  • защиту истории;
  • корректный разбор спорных случаев;
  • возможность повторного расчёта.

Корреляция событий и Root Cause

Задача корреляции

Корреляция предотвращает создание множества независимых Issues на одну и ту же техническую причину.

Система анализирует:

  • совпадение актива;
  • временную близость;
  • топологическую зависимость;
  • общую прошивку;
  • общий шлюз;
  • общего оператора связи;
  • общий регион;
  • общую серверную очередь;
  • последовательность симптомов;
  • исторические связи;
  • подтверждённые root causes прошлых случаев.

Уровни корреляции

Внутри одного актива

Несколько симптомов объединяются вокруг главного канона.

flowchart TD
  A["stale_communication"] --> C{"Корреляция внутри актива"}
  B["no_hourly_archive"] --> C
  D["battery_unknown"] --> C
  C --> R["Главный Issue stale_communication"]
  C --> S1["Вторичный сигнал no_hourly_archive"]
  C --> S2["Вторичный сигнал battery_unknown"]

Между активами

Похожие проблемы группируются в массовый инцидент.

flowchart TD
  A["38 устройств"] --> G{"Группировка"}
  B["Одна версия firmware"] --> G
  C["Один временной интервал"] --> G
  D["Один тип сбоя"] --> G
  G --> M["Massive Incident firmware_regression"]

По зависимости

Проблемы дочерних устройств связываются с отказом общего компонента.

flowchart TD
  A["Gateway-17 недоступен"] --> B["12 корректоров без связи"]
  B --> C["12 архивов не доставлены"]
  C --> D["Один dependency incident"]

Оценка связи (Correlation Score)

Для оценки силы связи используется объяснимая модель:

Scorr=waA+wtT+wpP+wcC+whHS_{corr} = w_a A + w_t T + w_p P + w_c C + w_h H

где:

  • AA — совпадение актива или зависимости;
  • TT — временная близость;
  • PP — совпадение паттерна;
  • CC — общий контекст;
  • HH — историческая подтверждённость связи.

Пример весов:

ФакторВес
AA — совпадение актива или зависимости0.30
TT — временная близость0.20
PP — совпадение паттерна0.20
CC — общий контекст0.15
HH — историческая подтверждённость0.15

Порог объединения задаётся по классу проблемы. Для критичных security-сигналов допускается более консервативный порог.

Классы Root Cause

OHM использует управляемый справочник первопричин:

КлассПримеры
Powerбатарея, питание, преобразователь
Communicationсеть, SIM, сигнал, оператор
Firmwareрегрессия, несовместимость
Configurationошибочный параметр
Registryдубль, ghost, неверная привязка
Sensorотказ, дрейф, залипание
Meteringметрологическая проблема
Infrastructureсервер, очередь, шлюз
IntegrationAPI, формат, mapping
Humanошибка действия или процесса
Environmentтемпература, влага, внешнее воздействие
Securityнарушение целостности или доступа
Externalсторонняя система или поставщик
Unknownнедостаточно данных

Статусы Root Cause

СтатусЗначение
hypothesisавтоматически предложенная гипотеза
under_investigationгипотеза проверяется
probableподтверждена несколькими независимыми признаками
confirmedподтверждена уполномоченным пользователем и Evidence
rejectedгипотеза отклонена
unknownпервопричина не установлена

Уверенность в Root Cause

Уверенность в гипотезе рассчитывается по совокупности доказательств:

Croot=i=1nriqiaii=1nriKindependenceC_{root} = \frac{ \sum_{i=1}^{n} r_i q_i a_i }{ \sum_{i=1}^{n} r_i } \cdot K_{independence}

где:

  • rir_i — надёжность детектора или источника;
  • qiq_i — качество Evidence;
  • aia_i — согласованность Evidence с гипотезой;
  • KindependenceK_{independence} — коэффициент независимости источников.

Если несколько Evidence происходят из одного и того же исходного набора данных, они не считаются полностью независимыми.

Операционная уверенность (Operational Confidence)

Operational Confidence показывает, насколько система уверена, что Issue является реальной и правильно классифицированной проблемой.

Cissue=wdD+weE+wrR+whHwxXC_{issue} = w_d D + w_e E + w_r R + w_h H - w_x X

где:

  • DD — надёжность детекторов;
  • EE — качество Evidence;
  • RR — согласованность корреляции;
  • HH — историческая подтверждаемость;
  • XX — штраф за противоречия и недостаток данных.

Интерпретация:

ConfidenceУровеньДействие
≥ 0.85высокийавтоматическое создание actionable Issue
0.65–0.85достаточныйсоздание Issue с обычным triage
0.40–0.65ограниченныйтребуется проверка
< 0.40низкийаналитический сигнал, автоматические действия запрещены

Связанные темы

Последнее обновление

Эта страница была полезной?