Membrane.Telemetry (Membrane Core v0.8.0) View Source
Defines basic telemetry event types used by Membrane's Core. Membrane uses Telemetry Package for instrumentation and does not store or save any measurements by itself.
It is user's responsibility to use some sort of metrics reporter
that will be attached to :telemetry package to consume and process generated measurements.
Instrumentation
Membrane.Telemetry publishes functions that return described below event names.
The following events are published by Membrane's Core with following measurement types and metadata:
[:membrane, :metric, :value]- used to report metrics, such as input buffer's size inside functions, incoming events and received caps.- Measurement:
metric_event_value_t/0 - Metadata:
%{}
- Measurement:
[:membrane, :link, :new]- to report new link connection being initialized in pipeline.- Measurement:
link_event_value_t/0 - Metadata:
%{}
- Measurement:
[:membrane, :pipeline | :bin | :element, :init]- to report pipeline/element/bin initialization- Measurement:
init_or_terminate_event_value_t/0 - Metadata:
%{}
- Measurement:
[:membrane, :pipeline | :bin | :element, :terminate]- to report pipeline/element/bin termination- Measurement:
init_or_terminate_event_value_t/0 - Metadata:
%{}
- Measurement:
The measurements are reported only when application using Membrane Core specifies following in compile-time config file:
config :membrane_core,
enable_telemetry: true
Link to this section Summary
Types
- path - element's path
- parent_path - process path of link's parent
- from - from element name
- to - to element name
- pad_from - from's pad name
- pad_to - to's pad name
- component_path - element's or bin's path
- metric - metric's name
- value - metric's value
Link to this section Types
Specs
event_name_t() :: [atom(), ...]
Specs
init_or_terminate_event_value_t() :: %{path: Membrane.ComponentPath.path_t()}
- path - element's path
Specs
link_event_value_t() :: %{
parent_path: String.t(),
from: String.t(),
to: String.t(),
pad_from: String.t(),
pad_to: String.t()
}
- parent_path - process path of link's parent
- from - from element name
- to - to element name
- pad_from - from's pad name
- pad_to - to's pad name
Specs
- component_path - element's or bin's path
- metric - metric's name
- value - metric's value