Class B3Format
java.lang.Object
io.opencensus.trace.propagation.TextFormat
io.opencensus.implcore.trace.propagation.B3Format
Implementation of the B3 propagation protocol. See b3-propagation.
-
Nested Class Summary
Nested classes/interfaces inherited from class TextFormat
TextFormat.Getter<C>, TextFormat.Setter<C> -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate static final Stringprivate static final Stringprivate static final Tracestateprivate static final String(package private) static final String(package private) static final String(package private) static final String(package private) static final String(package private) static final String -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescription<C> SpanContextextract(C carrier, TextFormat.Getter<C> getter) Extracts the span context from upstream.fields()The propagation fields defined.<C> voidinject(SpanContext spanContext, C carrier, TextFormat.Setter<C> setter) Injects the span context downstream.
-
Field Details
-
TRACESTATE_DEFAULT
-
X_B3_TRACE_ID
- See Also:
-
X_B3_SPAN_ID
- See Also:
-
X_B3_PARENT_SPAN_ID
- See Also:
-
X_B3_SAMPLED
- See Also:
-
X_B3_FLAGS
- See Also:
-
FIELDS
-
UPPER_TRACE_ID
- See Also:
-
SAMPLED_VALUE
- See Also:
-
FLAGS_VALUE
- See Also:
-
-
Constructor Details
-
B3Format
B3Format()
-
-
Method Details
-
fields
Description copied from class:TextFormatThe propagation fields defined. If your carrier is reused, you should delete the fields here before callingTextFormat.inject(SpanContext, Object, Setter).For example, if the carrier is a single-use or immutable request object, you don't need to clear fields as they couldn't have been set before. If it is a mutable, retryable object, successive calls should clear these fields first.
- Specified by:
fieldsin classTextFormat
-
inject
Description copied from class:TextFormatInjects the span context downstream. For example, as http headers.- Specified by:
injectin classTextFormat- Parameters:
spanContext- possibly not sampled.carrier- holds propagation fields. For example, an outgoing message or http request.setter- invoked for each propagation key to add or remove.
-
extract
public <C> SpanContext extract(C carrier, TextFormat.Getter<C> getter) throws SpanContextParseException Description copied from class:TextFormatExtracts the span context from upstream. For example, as http headers.- Specified by:
extractin classTextFormat- Parameters:
carrier- holds propagation fields. For example, an outgoing message or http request.getter- invoked for each propagation key to get.- Throws:
SpanContextParseException- if the input is invalid
-