View Source otel_span (opentelemetry_api v1.3.0)
Link to this section Summary
Types
Start options for a span.
Functions
Adds an event to the given span context.
Same as add_event/3
, but takes a list of events.
Ends the given span context.
Ends the given span context with the given timestamp.
Returns whether the span is recording.
Returns whether the span context is valid.
Returns the span ID of the given span context.
Returns the trace ID of the given span context.
Updates the name of the given span context to Name
.
Validates the start options for a span and fills in defaults.
Link to this section Types
-type start_opts() :: #{attributes := opentelemetry:attributes_map(), links := [opentelemetry:link()], is_recording := boolean(), start_time := opentelemetry:timestamp(), kind := opentelemetry:span_kind()}.
Link to this section Functions
-spec add_event(SpanCtx, Name, Attributes) -> boolean() when Name :: opentelemetry:event_name(), Attributes :: opentelemetry:attributes_map(), SpanCtx :: opentelemetry:span_ctx().
Adds an event to the given span context.
Returnsfalse
if the given span context is not recording, or if the event Name
is not valid.
-spec add_events(SpanCtx, Events) -> boolean() when Events :: [opentelemetry:event()], SpanCtx :: opentelemetry:span_ctx().
Same as add_event/3
, but takes a list of events.
false
if the given span context is not recording.
-spec end_span(SpanCtx) -> SpanCtx when SpanCtx :: opentelemetry:span_ctx().
Ends the given span context.
IfSpanCtx
is not recording, this function doesn't do anything. Returns the updated span context.
-spec end_span(SpanCtx, Timestamp) -> SpanCtx when SpanCtx :: opentelemetry:span_ctx(), Timestamp :: integer() | undefined.
Ends the given span context with the given timestamp.
IfSpanCtx
is not recording, this function doesn't do anything. If Timestamp
is undefined
, this is equivalent to end_span/1
. Returns the updated span context.
-spec hex_span_ctx(opentelemetry:span_ctx() | undefined) -> #{otel_trace_id := unicode:charlist(), otel_span_id := unicode:charlist(), otel_trace_flags := unicode:charlist()} | #{}.
-spec hex_span_id(opentelemetry:span_ctx()) -> opentelemetry:hex_span_id().
-spec hex_trace_id(opentelemetry:span_ctx()) -> opentelemetry:hex_trace_id().
-spec is_recording(SpanCtx) -> boolean() when SpanCtx :: opentelemetry:span_ctx() | undefined.
-spec is_valid(SpanCtx) -> boolean() when SpanCtx :: opentelemetry:span_ctx().
-spec record_exception(SpanCtx, Class, Term, Stacktrace, Attributes) -> boolean() when SpanCtx :: opentelemetry:span_ctx(), Class :: atom(), Term :: term(), Stacktrace :: [any()], Attributes :: opentelemetry:attributes_map().
Link to this function
record_exception(SpanCtx, Class, Term, Message, Stacktrace, Attributes)
View Source-spec record_exception(SpanCtx, Class, Term, Message, Stacktrace, Attributes) -> boolean() when SpanCtx :: opentelemetry:span_ctx(), Class :: atom(), Term :: term(), Message :: unicode:unicode_binary(), Stacktrace :: [any()], Attributes :: opentelemetry:attributes_map().
-spec set_attribute(SpanCtx, Key, Value) -> boolean() when Key :: opentelemetry:attribute_key(), Value :: opentelemetry:attribute_value(), SpanCtx :: opentelemetry:span_ctx().
-spec set_attributes(SpanCtx, Attributes) -> boolean() when Attributes :: opentelemetry:attributes_map(), SpanCtx :: opentelemetry:span_ctx().
-spec set_status(SpanCtx, StatusOrCode) -> boolean() when StatusOrCode :: opentelemetry:status() | undefined | opentelemetry:status_code(), SpanCtx :: opentelemetry:span_ctx().
-spec set_status(SpanCtx, Code, Message) -> boolean() when Code :: opentelemetry:status_code(), Message :: unicode:unicode_binary(), SpanCtx :: opentelemetry:span_ctx().
-spec span_id(opentelemetry:span_ctx()) -> opentelemetry:span_id().
-spec trace_id(opentelemetry:span_ctx()) -> opentelemetry:trace_id().
-spec tracestate(opentelemetry:span_ctx() | undefined) -> otel_tracestate:t().
-spec update_name(SpanCtx, Name) -> boolean() when Name :: opentelemetry:span_name(), SpanCtx :: opentelemetry:span_ctx().
Updates the name of the given span context to Name
.
false
if the given span context is not recording, or if the name Name
is not valid.
-spec validate_start_opts(start_opts()) -> start_opts().