Skip to content

Feat/grafana faro#40

Merged
kapitulin24 merged 7 commits intodevfrom
feat/grafana-faro
Apr 30, 2026
Merged

Feat/grafana faro#40
kapitulin24 merged 7 commits intodevfrom
feat/grafana-faro

Conversation

@kapitulin24
Copy link
Copy Markdown
Contributor

feat(observability): фронтенд Faro + OTel, локальный стек Grafana/Loki/Tempo/Alloy

В ветке собрана сквозная наблюдаемость фронтенда и локальная отладка метрик, логов и трейсов.

Что сделано

  1. Grafana Faro, OpenTelemetry и связка трейсов
    Подключены Faro и инструментация для Vercel/Next, конфигурация коллектора и связь трейсов с middleware (instrumentation.ts, FrontendObservability, правки proxy/layout, переменные в .env.example).

  2. Локальный стек наблюдаемости
    Добавлен Docker Compose для Grafana, Loki, Tempo и Grafana Alloy с провижинингом дашбордов и датасорсов, конфиги Loki/Tempo/Alloy и README в infra/observability.
    Добавлены дашборды для фронтенда и трейсов в Tempo.
    Корневой otelcol-config.yaml убран в пользу схемы со стеком в infra/observability.

  3. Снижение влияния на startup
    Инициализация Faro отложена до requestIdleCallback (с fallback), чтобы уменьшить влияние на время первого рендера.

Атрибуты окружения

Передача атрибутов окружения (env, release, browser, os) настроена и сопоставлена с текущей реализацией так:

  • envapp.environment
    Источник: NEXT_PUBLIC_APP_ENV, fallback: NODE_ENV, затем development.
  • releaseapp.version
    Источник: NEXT_PUBLIC_FARO_APP_VERSION, fallback: 1.0.0.
  • browser → автоматически из web-instrumentations (getWebInstrumentations()), на основе User-Agent.
  • os → автоматически из web-instrumentations (getWebInstrumentations()), на основе User-Agent.

Как проверить

  • Поднять стек по infra/observability/README.md.
  • Задать переменные окружения из .env.example.
  • Убедиться, что приложение отправляет события/метрики Faro, а трейсы появляются в Tempo/Grafana.
  • В Grafana Explore проверить наличие атрибутов env, release, browser, os в поступающих данных.

@kapitulin24 kapitulin24 merged commit 8a0cb70 into dev Apr 30, 2026
4 checks passed
@kapitulin24 kapitulin24 deleted the feat/grafana-faro branch April 30, 2026 20:55
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Frontend] Сбор метрик производительности и пользовательских событий

3 participants