Debugging high throughput, low-latency C/C++ systems in production is hard. At
Google we developed XRay, a function call tracing system that allows Google
engineers to get accurate function call traces with negligible overhead when off
and moderate overhead when on, suitable for services deployed in production. XRay
enables efficient function call entry/exit logging with high accuracy timestamps,
and can be dynamically enabled and disabled. This white paper describes the XRay
tracing system and its implementation. It also describes future plans with open
sourcing XRay and engaging open source communities.