Kadira vs Skylight: What are the differences?
Developers describe Kadira as "Performance Monitoring for Meteor". See what’s going on with your app with different performance metrics and traces. Kadira tracks all your client and server errors automatically. You can profile your app in production or locally with Kadira and analyze it using an easy-to-use CPU analyzer. On the other hand, Skylight is detailed as "The smart profiler for your Rails apps". Skylight is a smart profiler for your Rails apps that visualizes request performance across all of your servers.
Kadira and Skylight belong to "Performance Monitoring" category of the tech stack.
Some of the features offered by Kadira are:
- Performance Metrics and Traces
- Error Tracking
- CPU Profiling
On the other hand, Skylight provides the following key features:
- Skylight looks at how your code is behaving in production, alerting you to improvements you can make before they become showstoppers.
- Skylight tells you exactly how your app is spending its time where it matters most—in your production environment
- Pricing starts at $20 for the first million requests, with automatic discounts for high-volume customers
"Best performance monitoring tool for the best framewor" is the top reason why over 8 developers like Kadira, while over 10 developers mention "Beautiful UI" as the leading cause for choosing Skylight.
Kadira is an open source tool with 214 GitHub stars and 88 GitHub forks. Here's a link to Kadira's open source repository on GitHub.
What is Kadira?
What is Skylight?
Need advice about which tool to choose?Ask the StackShare community!
Sign up to add, upvote and see more prosMake informed product decisions
What are the cons of using Kadira?
Sign up to get full access to all the companiesMake informed product decisions
What tools integrate with Skylight?
We currently monitor performance with the following tools:
- Heroku Metrics: our main app is Hosted on Heroku, so it is the best place to get quick server metrics like memory usage, load averages, or response times.
- Good old New Relic for detailed general metrics, including transaction times.
- Skylight for more specific Rails
Controller#actiontransaction times. Navigating those timings is much better than with New Relic, as you get a clear full breakdown of everything that happens for a given request.
Skylight offers better Rails performance insights, so why use New Relic? Because it does frontend monitoring, while Skylight doesn't. Now that we have a separate frontend app though, our frontend engineers are looking into more specialized frontend monitoring solutions.
Finally, if one of our apps go down, Pingdom alerts us on Slack and texts some of us.
If you follow the registration flow you end up with running analytics virtually in a minute. Awesome first experience.
I don't have my application in production so I needed to enable skylight in development, but Skylight navigated me nicely to the exact paragraph of a documentation, which helped.
When we were facing performance issues with the new StackShare app. We originally thought it was a server issue. So we did quite a bit of research to see how many dynos we should be using for the sort of application we have and traffic profile. We couldn’t find anything useful online so I ended up asking my buddy Alain over at BlockScore. After a quick convo with him, I knew we should be totally fine with just 2 dynos.
We also tested the theory by increasing the number of dynos and running the load tests. They had little to no effect on error rate, so this also confirmed that it wasn’t a server issue.
So that meant it was an application issue. New Relic wasn’t any help. I spoke with another friend who suggested we use a profiler. We totally should have been using one all along. We added mini-profiler, which was great for identifying slow queries and overall page load times. We also had the Rails Chrome extension so we could see how long view rendering was taking. So we cleaned up the slowest queries.
We tried to use mini-profiler in production on the new StackShare app and for some reason, we couldn’t get it to work. We were in a time crunch so I asked Alain what they used and he said that they use Skylight in production. Funny enough, I remembered the name Skylight because we listed it on the site a while back. So we did that, and at first we couldn’t really see how it was useful. Then we realized what we were seeing were a ton of repeat queries on some of the pages we load tested.
Skylight is cool because it sort of gives you the full MVC profile. We were able to pinpoint specific db queries that being repeated. So we cleaned those up pretty quickly. But then we noticed the views were taking up all the load time, so we start implementing caching more aggressively. After we cleaned up the db queries and added more caching, our pages went from this: to this:
Skylight ended up being super useful. We use it in production now.
An essential for determining production performance. It provides us with clear insights into what might be slowing down responses so we know exactly what to fix.