You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This repository is home to a Rust crate `ddtrace` with various Datadog
2
-
utilities for tracing and logging in Rust.
3
-
4
-
# Background
1
+
Datadog tracing and log correlation for Rust services.
5
2
6
3
Datadog has official support for Python, which includes various SDKs and
7
4
other utilities (such as the Python `ddtrace` library)
@@ -12,32 +9,126 @@ They don't have similar support for Rust. However, they do support the
12
9
This crate contains the necessary glue to bridge the gap between OpenTelemetry
13
10
and Datadog.
14
11
15
-
# Further Information and Rationale
16
-
## Tracing
12
+
# Features
13
+
14
+
`ddtrace` has the following features:
15
+
1. tracing: utilities for building an OpenTelemetry tracer/layer that sends traces to the Datadog agent
16
+
2. log correlation: a log formatter that converts the trace ID and span ID to the Datadog native format and injects them into the `dd.trace_id` and `dd.span_id` fields
3. propagation: a utility function to set the Datadog propagator as the global propagator
19
+
4. axum (enabled via the `axum` feature): re-exposing the functionality of [axum-tracing-opentelemetry](https://github.com/davidB/axum-tracing-opentelemetry)
20
+
21
+
# A Complete Example
22
+
23
+
The following is an example for using `ddtrace` with the `axum` feature enabled
24
+
to set up an `axum` service with traces and logs sent to Datadog.
0 commit comments