K - Usually, but not always a Stringpublic interface Propagation<K>
trace identifiers as text into carriers that travel
in-band across process boundaries. Identifiers are often encoded as messaging or RPC request
headers.
When using http, the carrier of propagated data on both the client (injector) and server (extractor) side is usually an http request. Propagation is usually implemented via library- specific request interceptors, where the client-side injects span identifiers and the server-side extracts them.
| Modifier and Type | Interface and Description |
|---|---|
static interface |
Propagation.Factory |
static interface |
Propagation.Getter<C,K>
Gets the first value of the given propagation key or returns null
|
static interface |
Propagation.KeyFactory<K>
Creates keys for use in propagated contexts
|
static interface |
Propagation.Setter<C,K>
Replaces a propagated key with the given value
|
| Modifier and Type | Field and Description |
|---|---|
static Propagation<String> |
B3_STRING |
| Modifier and Type | Method and Description |
|---|---|
<C> TraceContext.Extractor<C> |
extractor(Propagation.Getter<C,K> getter) |
<C> TraceContext.Injector<C> |
injector(Propagation.Setter<C,K> setter) |
List<K> |
keys()
The propagation fields defined
|
static final Propagation<String> B3_STRING
<C> TraceContext.Injector<C> injector(Propagation.Setter<C,K> setter)
setter - invoked for each propagation key to add.<C> TraceContext.Extractor<C> extractor(Propagation.Getter<C,K> getter)
getter - invoked for each propagation key to get.Copyright © 2017 OpenZipkin. All rights reserved.