https://github.com/rochdev/datadog-tracer-spec
OpenTracing propagation specification for Datadog distributed tracing
https://github.com/rochdev/datadog-tracer-spec
Last synced: 5 months ago
JSON representation
OpenTracing propagation specification for Datadog distributed tracing
- Host: GitHub
- URL: https://github.com/rochdev/datadog-tracer-spec
- Owner: rochdev
- License: mit
- Created: 2017-04-17T17:31:16.000Z (about 9 years ago)
- Default Branch: master
- Last Pushed: 2017-04-19T22:45:20.000Z (about 9 years ago)
- Last Synced: 2025-01-01T07:44:51.598Z (over 1 year ago)
- Size: 1.95 KB
- Stars: 3
- Watchers: 3
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# [WIP] Datadog Tracer Specification
OpenTracing propagation specification for Datadog distributed tracing. This specification was created to ensure that distributed tracing works properly across the different implementations in any programming language.
## Propagation
### Text Map
Text map propagation uses the following keys:
* **dd-tracer-traceid**
* **dd-tracer-spanid**
* **dd-tracer-sampled**
* **dd-baggage-{key}**
### HTTP Headers
Same as text map. Additionally, keys and values should be suitable according to [RFC 7230](https://tools.ietf.org/html/rfc7230#section-3.2.4).
### Binary
Binary propagation is done using [Protocol Buffers Version 3](https://developers.google.com/protocol-buffers/docs/reference/proto3-spec) in the following format:
```protobuf
syntax = "proto3";
message TracerState {
fixed64 trace_id = 1;
fixed64 span_id = 2;
bool sampled = 3;
map baggage_items = 4;
}
```