Урок 0019 · Observability и трейсинг глубже

От «логируй всё» к SLO и дашбордам: что мерить, как связать трейсы с evals, как находить деградации до жалоб.

Цель урока Назвать 3 уровня observability (трейсы, метрики, алерты), связать их с evals и сказать, какие SLO выставить для каре.

1. Три уровня observability

УровеньЧтоИнструменты
ТрейсыПолный путь запроса: LLM-вызовы, тулы, чанки, промптыOpenTelemetry, Langfuse, LangSmith, Phoenix
МетрикиАгрегаты: RPS, p95, cost, ошибкиPrometheus (vLLM /metrics), Grafana
АлертыПороги: очередь растёт, WER скакнул, PII-leakAlertmanager, PagerDuty

Трейсы отвечают «что случилось с этим запросом», метрики — «не деградировало ли в целом», алерты — «пора вставать».

2. Что логировать (из уроков 0007, 0002)

trace_id, session_id, tenant_id,
prompt_version, config_version, model,
tokens_in/out, cost, latency,
tool_calls: [{name, args_hash, status, latency}],
chunk_ids, guard_decision, handoff, WER (для voice)

Ключевое: prompt_version + config_version — без них невозможно откатить «вчерашний ответ» и понять, какая версия промпта дала регрессию (урок 0007).

3. Трейсы → evals: связка

Observability и evals — это одна петля, не два мира:

  1. Прод-трейс → нашёл неизвестный фейл (error analysis, урок 0001).
  2. Фейл → датасет → eval → регресс-тест.
  3. Eval в CI ловит регрессию до прода (урок 0020).

Это петля Phoenix/Langfuse: «observe → find → dataset → evaluate». Инструменты из урока 0008 и глоссария инструментов.

4. SLO для каре: что выставить

МетрикаТипичный SLOПочему
PII-leak rate0.0%Не обсуждается для банка
Resolution rate≥ целевого (например, 70%)Главная бизнес-метрика
p95 latency< 2с (текст), < 1с первый звук (voice)UX
Guard trip rateстабилен, не скачетАномалия = атака или перекос
Error rate (5xx/тул)< 0.1%Надёжность
Eval pass rate в CI100% на критичных (PII, деньги)Регрессии не в прод

5. Алерты: что реально алертить

Правило: алерт = действие. «Что-то странное» — это дашборд, не алерт.

Проверь себя

Трейс отвечает на вопрос?

SLO по PII-leak для банка?

Алерт — это когда?

Видео и статьи

Первоисточник урока Петля observe→evaluate: Phoenix / Langfuse. Метрики сервера: vLLM /metrics.

Sources: