Telemetria

Макрос автоматической телеметрии функций во время компиляции.

Active ElixirTelemetryMacrosObservability 26 44370
Telemetria

автоматизирует отправку событий :telemetry на уровне функций в Elixir с помощью декларативных аннотаций и макросов.

Идея

Добавление наблюдаемости в Elixir-приложения часто приводит к загромождению бизнес-логики повторными вызовами :telemetry.execute/3 . Упущенные тайминги функций или неперехваченные аргументы усложняют отладку в продакшене.

Telemetria решает эту проблему с помощью однострочной аннотации @telemetria . Добавьте аннотацию к любой функции Elixir, и Telemetria автоматически сгенерирует обертки во время компиляции, отправляющие стандартизированные события телеметрии с фиксацией времени выполнения, аргументов и результатов.


Почему Telemetria?

Без Шаблонного Кода

Просто укажите @telemetria true или @telemetria level: :info перед функцией.

Автоматическая Генерация Событий

Отправляет события старта, завершения и исключений с микросекундной точностью.

Оптимизация при Компиляции

Нулевые накладные расходы при отключении в определенных окружениях (например, в тестах).

Гибкая Интеграция

Совместим с :telemetry_metrics , TelemetryUI и OpenTelemetry.


Технологии

Язык Elixir
Базовый Пакет :telemetry
Инструментация AST Метапрограммирование / Макросы
Hex Пакет telemetria

Для Кого

  • Elixir Разработчиков , ищущих прозрачную наблюдаемость без загрязнения модулей.
  • Создателей Микросервисов & API , отслеживающих задержки выполнения внутренних функций.
  • SRE & Operations Инженеров , строящих конвейеры метрик на базе :telemetry .

Итог

Добавьте телеметрию функций Elixir во время компиляции с помощью одной аннотации.