You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
[DevOps/Frontend] Интеграция клиентского логирования в Grafana Loki #38
Текущая система сбора логов ограничена серверной стороной. Для получения полной картины происходящего необходимо настроить стриминг клиентских логов (консольные ошибки, предупреждения, информационные сообщения сессии) напрямую в Grafana Loki через Grafana Faro. Это позволит коррелировать логи фронтенда с серверными логами по trace_id и session_id.
Технические требования
Локация логики: Конфигурация SDK в telemetry/faro-init.ts.
Инструменты:@grafana/faro-web-sdk, Grafana Loki, Grafana Alloy (как прокси-коллектор).
Логика работы:
Инструментация консоли: Активация ConsoleInstrumentation для автоматического перехвата console.error, console.warn и console.info.
Уровни логирования: Настройка маппинга уровней (loglevel) из браузера в соответствующие лейблы Loki.
Метаданные: Обогащение каждой записи лога контекстом: URL страницы, версия приложения и ID пользователя.
Цель и критерии приемки (Definition of Done)
База: Включен плагин ConsoleInstrumentation в конфигурации Faro SDK.
Функционал: Логи из браузера появляются в Grafana Explore при фильтрации по source="faro".
Лимиты/SLA: Установлен лимит на объем передаваемых логов, чтобы избежать "заспамливания" хранилища циклическими ошибками.
Интеграция: Настроены derived fields в Grafana для быстрого перехода из лога Loki к соответствующему трейсу в Tempo.
Важные указания
Производительность: Исключить логирование в режиме development, чтобы не дублировать данные при локальной разработке.
Ошибки: Предусмотреть фильтрацию "шумных" ошибок от сторонних расширений браузера (например, LastPass, AdBlock), которые не относятся к коду приложения.
Безопасность: Стриминг логов должен проходить через бэкенд-прокси или Grafana Alloy с проверкой API Key для защиты эндпоинта Loki.
Activity