As part of an undergraduate research project, I used Trace Compass, a trace viewer and analysis framework, to leverage existing ROS instrumentation and create an analysis that can draw the path of a message through ROS nodes. It can show how much time a message spent inside queues and callbacks.
I’ve written a blog post to present my project and give more context on tracing & robotics, explain how everything works, and to show off the resulting analysis.
Right now it’s mostly a proof-of-concept, but it highlighted a few paths that could be explored in the future.
Let me know if you have any questions or comments!