Log Sage
Не «вот error spike» — а «вот цепочка: latency-rise в DB-pool → connection-timeout в payment-service → 5xx-spike на checkout-page». Causal inference через PCMCI (causal graph induction) + кросс-источниковая корреляция Loki/Prometheus/Jaeger + LLM-генерация root-cause hypotheses.
Инцидент production: SRE/on-call видит alert «5xx errors up». На самом деле причина — конкретный change в DB pool config 3 часа назад, который начал давать timeout'ы только сейчас при пиковой нагрузке. Standard observability показывает symptom (errors), не cause. Log Sage делает causal analysis: трассирует от symptom через graph причинных связей к root cause.
Causal graph induction — не «correlation», а реальные причинные связи
Стандартная observability показывает «error_rate up + latency up» — но не «latency caused errors» или «errors caused both». PCMCI применяет formal causal-discovery: учитывает временные лаги, conditional independence, контролирует за известными confounders. На выходе — directed acyclic graph с edge-strengths, который SRE может trust как objective. И это reproducible — две runs на тех же данных дадут одинаковый graph.
Пошаговая архитектура
Multi-source ingestion
Подключение к Prometheus (metrics), Loki/ELK (logs), Jaeger/Tempo (traces). Realtime streams через webhooks или pull-based от scrape-endpoints.
Log clustering (Drain3)
Drain3 алгоритм — template extraction из лог-строк. 10M raw logs → 500-2000 unique templates. Drastically снижает search space.
Anomaly detection
Isolation Forest на metrics + template-frequency anomalies в logs + trace-latency tail. Output — anomaly_score per signal per time-window.
Causal graph induction (PCMCI)
Tigramite/PCMCI алгоритм находит causal links между time-series. «Latency_DB drove Errors_payment-service after lag 2 minutes». Granger causality + non-linear tests.
Trace-graph integration
Distributed-tracing data даёт service-call-graph (структура). Causal-graph даёт edge-weights (что drove что). Merge даёт «directed graph причин».
LLM root-cause hypothesis
GigaChat / YandexGPT с context: graph + recent changes (git/deploys) + on-call notes. Output — top-3 hypotheses с reasoning paths: «X drove Y because A and B happened together».
Remediation suggestion
По known root-cause-pattern lookup'у: «такая же history раньше fixилась через rollback X / scale-up Y / restart Z». С confidence по historical-fix-success.
Стек, который не запирает
Drain3 для log template extraction
Isolation Forest + autoencoder для anomaly detection
Tigramite / PCMCI для causal graph induction (Granger causality + non-linear tests)
GigaChat для NL-генерации root-cause hypotheses
Coupling с git/deploy systems (GitHub, GitLab, ArgoCD) для recent-changes context
Integrations с Grafana / PagerDuty / OpsGenie для alert routing
Идеально для
- SaaS-компании с production-инфраструктурой и 24/7 on-call
- Телекомы (множество сервисов, complex dependencies)
- Банки (regulated uptime, audit-trail требования)
- E-com маркетплейсы (revenue-impact каждой минуты downtime)
Границы кейса
- Не предотвращает инциденты (это chaos engineering / SRE practices)
- Не делает auto-remediation (только предлагает — final action за SRE)
- Не работает с low-volume systems (<10K events/hour) — causal-discovery требует data density
- Не подменяет on-call SRE — это co-pilot, не replacement
Частые вопросы
Работает, но качество ниже. Best результаты — все три источника (logs + metrics + traces). На logs-only — 60-70% от full accuracy.
Что ещё может пригодиться
Покажем на ваших данных
за 1-2 недели
Подключаемся к ограниченной выборке, разворачиваем PoC на ваших реальных кейсах. Оценка качества, точности и UX — на вашей специфике, не на наших красивых демо.