Expand description
Runtime metadata that the host tracer may update after startup.
runtime_id and process_tags are the two tracer metadata values that may change
while exporters and workers are already running. They live in a single
MutableMetadata struct shared through an ArcSwap; every component holds a
MutableMetadataHandle and reads the values through it at use time, so an update
by the host SDK propagates to all components.
§Protocol
- Writers (the host SDK via FFI, or the library itself) call
MutableMetadataHandle::set_runtime_id/MutableMetadataHandle::set_process_tags/MutableMetadataHandle::updateto modify the current snapshot. - Readers call
MutableMetadataHandle::loadat the point of use, which returns a lock-free snapshot. The snapshot is consistent for a single read only; values are not consistent across multipleload()calls.
Structs§
- Mutable
Metadata - The tracer metadata values that may be updated after startup.
- Mutable
Metadata Handle - A shared handle to a
MutableMetadata.