Bugsnag vs New Relic: What are the differences?
Bugsnag: Bugsnag provides production error monitoring and management for front-end, mobile and back-end applications. Bugsnag captures errors from your web, mobile and back-end applications, providing instant visibility into user impact. Diagnostic data and tools are included to help your team prioritize, debug and fix exceptions fast; New Relic: SaaS Application Performance Management for Ruby, PHP, .Net, Java, Python, and Node.js Apps. New Relic is the all-in-one web application performance tool that lets you see performance from the end user experience, through servers, and down to the line of application code.
Bugsnag can be classified as a tool in the "Exception Monitoring" category, while New Relic is grouped under "Performance Monitoring".
Some of the features offered by Bugsnag are:
- Root cause error grouping
- Real-time alerting to chat, email or SMS
On the other hand, New Relic provides the following key features:
- Performance Data Retention
- Real-User Response Time, Throughput, & Breakdown by Layer
- App Response Time, Throughput, & Breakdown by Component
"Lots of 3rd party integrations" is the top reason why over 46 developers like Bugsnag, while over 411 developers mention "Easy setup" as the leading cause for choosing New Relic.
StackShare, Shopify, and Salesforce are some of the popular companies that use New Relic, whereas Bugsnag is used by Zendesk, Movielala, and UNION. New Relic has a broader approval, being mentioned in 3143 company stacks & 566 developers stacks; compared to Bugsnag, which is listed in 295 company stacks and 47 developer stacks.
What is Bugsnag?
What is New Relic?
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 Bugsnag?
Sign up to add, upvote and see more consMake informed product decisions
Sign up to get full access to all the companiesMake informed product decisions
Sign up to get full access to all the tool integrationsMake informed product decisions
I had narrowed it down to two tools LogRocket and Sentry (I also tried Bugsnag but it did not make the final two). Before I get into this I want to say that both of these tools are amazing and whichever you choose will suit your needs well.
I firstly decided to go with LogRocket the fact that they had a recorded screen capture of what the user was doing when the bug happened was amazing... I could go back and rewatch what the user did to replicate that error, this was fantastic. It was also very easy to setup and get going. They had options for React and Redux.js so you can track all your Redux.js actions. I had a fairly large Redux.js store, this was ended up being a issue, it killed the processing power on my machine, Chrome ended up using 2-4gb of ram, so I quickly disabled the Redux.js option.
After using LogRocket for a month or so I decided to switch to Sentry. I noticed that Sentry was openSorce and everyone was talking about Sentry so I thought I may as well give it a test drive. Setting it up was so easy, I had everything up and running within seconds. It also gives you the option to wrap an errorBoundry in React so get more specific errors. The simplicity of Sentry was a breath of fresh air, it allowed me find the bug that was shown to the user and fix that very simply. The UI for Sentry is beautiful and just really clean to look at, and their emails are also just perfect.
I have decided to stick with Sentry for the long run, I tested pretty much all the JS error loggers and I find Sentry the best.
Which #APM / #Infrastructure #Monitoring solution to use?
The 2 major players in that space are New Relic and Datadog Both are very comparable in terms of pricing, capabilities (Datadog recently introduced APM as well).
In our use case, keeping the number of tools minimal was a major selection criteria.
As we were already using #NewRelic, my recommendation was to move to the pro tier so we would benefit from advanced APM features, synthetics, mobile & infrastructure monitoring. And gain 360 degree view of our infrastructure.
Few things I liked about New Relic: - Mobile App and push notificatin - Ease of setting up new alerts - Being notified via email and push notifications without requiring another alerting 3rd party solution
I've certainly seen use cases where NewRelic can also be used as an input data source for Datadog. Therefore depending on your use case, it might also be worth evaluating a joint usage of both solutions.
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.
Regarding Continuous Integration - we've started with something very easy to set up - CircleCI , but with time we're adding more & more complex pipelines - we use Jenkins to configure & run those. It's much more effort, but at some point we had to pay for the flexibility we expected. Our source code version control is Git (which probably doesn't require a rationale these days) and we keep repos in GitHub - since the very beginning & we never considered moving out. Our primary monitoring these days is in New Relic (Ruby & SPA apps) and AppSignal (Elixir apps) - we're considering unifying it in New Relic , but this will require some improvements in Elixir app observability. For error reporting we use Sentry (a very popular choice in this class) & we collect our distributed logs using Logentries (to avoid semi-manual handling here).
BugSnag's customer support has gone above and beyond for me! They got me a free shirt, and I am veyr impressed by thier error management system. Easy to work with, and makes location errors I may have missed quick and easy!
It is really fine if you do not mind paying a bit. Much more reliable and better designed than the competition. Open source code for iOS tracker, helps a lot. Excellent online support.
Free Heroku add-on. Not particularly useful for us. Rails profilers tend to do a better job at the app level. And I can never really figure out what’s going on with Heroku by looking at New Relic. I don’t know if we’re just not using New Relic correctly or if it really does just suck for our use case. But I guess some insight is better than none.
How do you know what parts of the workflow need improvement? Measure it. With New Relic in place, we have graphs of our API performance and can directly see if a server or zone is causing trouble, and the impact of our changes. There’s no comparison between a real-time performance graph and “Strange, the site seems slow, I should tail the logs”.
We monitor and troubleshoot our app's performance using New Relic, which gives us a great view into each type of request that hits our servers. It also gives us a nice weekly summary of error rates and response times so that we know how well we've done in the past week.
I'm trying to wring more instrumentation out of New Relic as it pertains to Rack, but for the time being, New Relic is monitoring/alerting uptime and some basic performance metrics.
Just like we care about errors, we care about metrics - especially around performance. You'd be crazy not to use it - and not surprisingly, it's a one-click add-on in Heroku.
Bugsnag provides Rails and Sidekiq error tracking with email notifications on exceptions.