Bridges Telemetry.Metrics definitions into OpenTelemetry metrics.
The public API stays intentionally small:
- callers define metric spec modules implementing
OtelBridge.Spec - callers optionally attach observer children for gauge-like metrics
- backend policy is selected via
OtelBridge.Profilemodules
Summary
Types
@type option() :: {:metrics, [Telemetry.Metrics.t()]} | {:specs, [module()]} | {:optional_specs, [module()]} | {:measurements, [module() | {module(), atom(), [term()]}]} | {:meta, keyword()} | {:poller, keyword()} | {:observer_children, [Supervisor.child_spec()]}
Functions
@spec child_spec([option()]) :: Supervisor.child_spec()
@spec prepare_metrics([Telemetry.Metrics.t()]) :: [Telemetry.Metrics.t()]
@spec start_link([option()]) :: Supervisor.on_start()