Tracing Meteor Method Calls

I’ve recently inherited a Meteor.js application and while it has been a breeze for the most part I am really struggling with setting up distributed tracing to help us correlate actions in our Meteor.js application with our broader ecosystem. Specifically, I am using Instana, however, any prior experience with a full stack APM solution should be relevant.

I believe the core of the issue is the massive network segmentation which occurs during the course of the DDP protocol in contrast to traditional XHR requests. While it appears that consumption and correlation of the initial method call works correctly, any subsequent server-to-client communication drops completely off of the radar. It seems to me that the only viable solution, which also appears to be the methodology behind Meteor dev tools, is to intercept the DDP stream and manually install correlation via trace ids into the messages.

It all seems quite tedious so I am curious if I am missing something or whether anyone has tackled this problem before. Thanks!

Have you tried to use Kadira APM which is open source now.