Introducing Kadira Debug for Production Meteor Apps
With remote debugging, data import/export and many stability improvements.
We launched Kadira Debug last year as a debugging tool to identify performance bottlenecks in your Meteor apps. Specifically, you can easily discover response time bottlenecks with Kadira Debug. You can see all the DDP activities, server traces and real network time.
But it was a debugOnly package and not available for production Meteor apps.
Kadira Debug for Production Apps
Today, we are happy to introduce Kadira Debug for production apps. You can simply connect to any Meteor app using our management console and see what’s really going on inside a single Meteor session.
You can simply share the management console URL with your team and debug the app remotely collaboratively.
You can also save the current session’s data for later use. Then you can load it and analyze the session whenever you like.
Have a look at the following video:
To get started with Kadira Debug, visit here.
🐵: Okay. This is cool. But, what about security?
Kadira Debug and Security
We take security seriously. By default in production, Kadira Debug does nothing. If you want to enable Kadira Debug for production apps, you need to provide an AUTH KEY via an environment variable or by using Meteor settings.
See this article on how to set it.
Then, when you try to connect to your app, you’ll be asked to enter that AUTH KEY. So, no one else would be able to access your app using Kadira Debug.
Note: Always use the HTTPS version of your app with Kadira Debug.
🐵: Ah ha. That’s good. But still, Kadira Debug data is routed vai Kadira servers. So, you guys can see everything, can’t you?
Data Ownership
Nope. Kadira Debug data is stored on two small capped collections (50mb each) in your MongoDB database, and these data won’t be sent to Kadira for any reason. Kadira Debug management console simply connects to your app using DDP so that you can access that data.
Kadira Debug management console is a 100% client-side app.
So, your data remain with your app and Kadira can’t see any of it. You can take a look at the Kadira Debug Meteor package for more information.
🐵: That’s great. But, now I can’t see the Blaze tab in Kadira Debug.
No More Blaze Support
Yes. We removed it.
Previously, we tracked some blaze-specific metrics to help you fix UI-related issues. But most of the time, even with that information, it was hard to fix Blaze’s performance issues. To fix them, you have to use some hacks or write some complex code.
It was much better to use something like React if there are any performance issues. So, that’s why we removed Blaze support.
Kadira Debug and the Future
We are planning to integrate Kadira Debug right inside Kadira APM. With that, you don’t need to set an AUTH KEY manually and we’ll use a different authentication mechanism, which is transparent to you.
We will also add more insight into Kadira Debug in coming months. Additionally, you’ll be able to connect to your app, take a CPU profile, and interact with live sessions.
Try the new Kadira Debug and let us know what you think about it. Additionally, you can share Kadira Debug’s exported data around forums when you’re asking for help (but make sure it doesn’t contain any sensitive information).