Behaviours: gen_server
.
This module is the SDK's implementation of the MeterProvider. The
calls to the server are done from the API module otel_meter_provider
.
This gen_server
is started as part of the SDK's supervision tree and
registers itself as the default MeterProvider by using the atom
otel_meter_provider
as its name.
The MeterProvider is where Meter's are created and Views are registered.
Each MeterProvider has an associated MetricReader.
The MeterProvider "owns" any Instrument created with a Meter from that MeterProvider.
For Measumrents on an Instrument the MeterProvider's Views are checked for a match. If no match is found the default aggregation and temporality is used.meter() = #meter{}
view_config() = #{name => otel_instrument:name() | undefined, description => unicode:unicode_binary() | undefined, selector => otel_view:criteria(), attribute_keys => [opentelemetry:attribute_key()] | undefined, aggregation_module => module() | undefined, aggregation_options => map()}
add_instrument(Instrument::otel_instrument:t()) -> boolean()
add_instrument(Provider::atom(), Instrument::otel_instrument:t()) -> boolean()
add_metric_reader(ReaderId, ReaderPid, DefaultAggregationMapping, Temporality) -> any()
add_metric_reader(Provider, ReaderId, ReaderPid, DefaultAggregationMapping, Temporality) -> any()
add_view(Criteria::otel_view:criteria(), Config::otel_view:config()) -> boolean()
add_view(Name::otel_view:name(), Criteria::otel_view:criteria(), Config::otel_view:config()) -> boolean()
add_view(Provider::atom(), Name::otel_view:name(), Criteria::otel_view:criteria(), Config::otel_view:config()) -> boolean()
code_change(State) -> any()
force_flush() -> ok
force_flush(Provider::gen_server:server_ref()) -> ok
get_readers() -> any()
get_readers(Provider) -> any()
handle_call(X1, From, State) -> any()
handle_cast(X1, State) -> any()
handle_info(X1, State) -> any()
init(X1) -> any()
record(Ctx::otel_ctx:t(), Meter::#meter{}, Name::otel_instrument:t() | otel_instrument:name(), Number::number(), Attributes::opentelemetry:attributes_map()) -> ok
register_callback(Instruments::[otel_instrument:t()], Callback::otel_instrument:callback(), CallbackArgs::otel_instrument:callback_args()) -> boolean()
register_callback(Provider::atom(), Instruments::[otel_instrument:t()], Callback::otel_instrument:callback(), CallbackArgs::otel_instrument:callback_args()) -> boolean()
report_cb(X1) -> any()
start_link(Name::atom(), RegName::atom(), Resource::otel_resource:t(), Config::otel_configuration:t()) -> {ok, pid()} | ignore | {error, term()}
Generated by EDoc