Home / Companies / Datadog / Blog / Post Details
Content Deep Dive

Making Rust observability reliable at scale with OpenTelemetry

Blog post from Datadog

Post Details
Company
Date Published
Author
Björn Antonsson, Paul Le Grand des Cloizeaux, Scott Gerring
Word Count
2,130
Company Posts That Month
5
Language
English
Hacker News Points
-
Post removed?
No
Summary

Datadog developed dd-trace-rs, an open-source, opinionated Rust distributed tracing library built on the OpenTelemetry SDK, to address fragmented traces, inconsistent context propagation, and uneven sampling across its growing fleet of performance-sensitive Rust services. Rather than relying solely on flexible but complex OpenTelemetry configurations or extending Rust’s tracing crate beyond its intended scope, the library applies Datadog defaults for metadata, propagation, and sampling while retaining compatibility with existing OpenTelemetry instrumentation. Datadog also contributed upstream improvements that synchronize tracing and OpenTelemetry contexts, including a stack-based context model that fixes broken parent-child relationships and improves performance. Its custom pipeline supports deferred sampling decisions and buffers spans into trace-level chunks, allowing complete traces to be retained when valuable while exporting aggregate metrics for dropped spans. Internal adoption reportedly reduced trace-ingestion volume by 20 times and tripled indexed spans per service, while Datadog plans to continue combining upstream OpenTelemetry contributions with targeted extensions for production-scale Rust observability.

Trends Found in this Post
Trend Post Mentions Total Month Mentions Posts Companies MoM
Observability 46 No monthly metrics for this publish month.
OpenTelemetry 39 No monthly metrics for this publish month.
Real-time 1 No monthly metrics for this publish month.
Use This Data

Use this post, company, and trend context to find content marketing opportunities, perform competitive analysis, or address product feature gaps via the Plushcap MCP server or the Plushcap API.