OpenTelemetry API v0.3.1 OpenTelemetry.Tracer
This module contains macros for Tracer operations around the lifecycle of the Spans within a Trace.
The Tracer is able to start a new Span as a child of the active Span of the current process, set a different Span to be the current Span by passing the Span's context, end a Span or run a code block within the context of a newly started span that is ended when the code block completes.
The macros use the Tracer registered to the Application the module using the macro is included in,
assuming OpenTelemetry.register_application_tracer/1
has been called for the Application. If
not then the default Tracer is used.
require OpenTelemetry.Tracer
OpenTelemetry.Tracer.with_span "span-1" do
... do something ...
end
Link to this section Summary
Functions
Returns the currently active OpenTelemetry.tracer_ctx/0
.
Returns the currently active OpenTelemetry.span_ctx/0
.
End the Span. Sets the end timestamp for the currently active Span. This has no effect on any child Spans that may exist of this Span.
Takes a OpenTelemetry.span_ctx/0
and the Tracer sets it to the currently active Span.
Creates a new span and makes it the current active span of the current process.
Creates a new span which is ended automatically when the block
completes.
Link to this section Types
start_opts()
start_opts() :: %{ optional(:parent) => OpenTelemetry.span() | OpenTelemetry.span_ctx(), optional(:attributes) => OpenTelemetry.attributes(), optional(:sampler) => :ot_sampler.sampler(), optional(:links) => OpenTelemetry.links(), optional(:is_recording) => boolean(), optional(:start_time) => :opentelemetry.timestamp(), optional(:kind) => OpenTelemetry.span_kind() }
Link to this section Functions
Returns the currently active OpenTelemetry.tracer_ctx/0
.
Returns the currently active OpenTelemetry.span_ctx/0
.
End the Span. Sets the end timestamp for the currently active Span. This has no effect on any child Spans that may exist of this Span.
The default Tracer in the OpenTelemetry Erlang/Elixir SDK will then set the parent, if there is a local parent of the current Span, to the current active Span.
Takes a OpenTelemetry.span_ctx/0
and the Tracer sets it to the currently active Span.
Creates a new span and makes it the current active span of the current process.
The current active Span is used as the parent of the created Span unless a parent
is given in the
start_opts/0
argument or there is no active Span. If there is neither a current Span or a
parent
option given then the Tracer checks for an extracted SpanContext to use as the parent. If
there is also no extracted context then the created Span is a root Span.
Creates a new span which is ended automatically when the block
completes.
See start_span/2
and end_span/0
.