BlogsDiscordDistributed Tracing for Elixir Systems

Distributed Tracing for Elixir Systems

Distributed Tracing for Elixir Systems

1
posts
2026

Discord has implemented distributed tracing for its Elixir systems to provide deeper insights into the performance and reliability of its services. This initiative allows engineers to trace operations across different parts of the system, helping to diagnose performance bottlenecks and outages more effectively. The implementation involved building custom solutions to propagate tracing context within Elixir's communication mechanisms, enabling end-to-end visibility without impacting system availability.

2026

Tracing Discord's Elixir Systems (Without Melting Everything)

3/4/2026

This post details the technical challenges and solutions involved in integrating distributed tracing into Discord's Elixir-based systems. It describes the limitations of existing observability tools (metrics, logs, guild timings) for understanding end-to-end user experience and the necessity of distributed tracing. The core contribution is the development of a custom mechanism to propagate tracing context within Elixir's communication primitives, which do not natively support metadata layers like HTTP headers. This was achieved without downtime, enhancing the ability to debug and understand system behavior.