Otel.Metrics.InstrumentsStorage (otel v0.4.1)

Copy Markdown View Source

ETS owner for the named ETS table — one row per registered Instrument keyed by downcased_name (spec metrics/api.md §Instrument identity L190-L191). InstrumentationScope is hardcoded SDK-wide (project memory project_minikube_hardcode_decisions § Follow-on #457), so it is omitted from the key.

A GenServer that owns the table so its lifetime matches the SDK supervisor and dies with it. The table is public with read_concurrency / write_concurrency so any process reads/writes without going through this server — the GenServer is not on the hot path. Same pattern as Otel.Trace.SpanStorage.

Summary

Functions

Returns a specification to start this module under a supervisor.

Functions

child_spec(init_arg)

Returns a specification to start this module under a supervisor.

See Supervisor.

start_link(opts \\ [])

@spec start_link(opts :: keyword()) :: GenServer.on_start()