Discord Engineers Add Distributed Tracing to Elixir's Actor Model Without Performance Penalty

Wait 5 sec.

Discord engineering detailed how they added distributed tracing to Elixir's actor model. Their custom Transport library wraps messages with trace context and uses dynamic sampling to handle million-user fanouts. CPU optimizations included skipping unsampled traces and filtering context before deserialization, recovering 10+ percentage points of overhead. By Steef-Jan Wiggers