Stackify vs. New Relic vs. Scout | APM Tool Comparison
Stackify vs. New Relic vs. Scout | APM Tool Comparison
Stackify Retrace primarily supports Java, .NET, PHP, Nodej.js, Ruby, and Python applications. New Relic supports Java, node.js, Python, Go, PHP, .NET, and Ruby. On the other hand, Scout APM supports Ruby, Python, Node.js, PHP, Elixir & Phoenix, in addition to Error Monitoring, Database Monitoring and External Services Monitoring.
The core features of Stackify are detailed tracing on SQL queries and application/server log management. It supports Async & .NET Core and detailed code level profiling. In contrast, New Relic provides a setup of real-time instrumentation and analytics.
Scout APM provides detailed insights on performance directly on its dashboard. It identifies slow database queries, N+1 database queries, errors, and memory bloat.
Scout provides better transaction traces by breaking down memory allocation in addition to timing metrics. Scout APM can easily backtrace slow method calls to identify performance bottlenecks and tie them to source code. Database Monitoring provides charts to display data across each query (not just the top five expensive queries).
Another important feature of Scout is, it’s easy to compare performance in a small slice of time to the normal performance. It also provides an improved development Profiler.
Stackify Retrace integrates with Jira, Slack, Axosoft, Azure DevOps, and AWS AutoScale.
New Relic provides integrations of all the services on major cloud providers. Also, It can integrate with Slack, Lighthouse(ticketing system), Databases, and Kubernetes.
Scout integrates with popular developer tools such as GitHub, Rollbar, Bugsnag, Sentry, Slack, PagerDuty, and Honeybadger.
Core APM Product Features
Stackify Core Features
Tracing SQL Queries
Stackify helps trace SQL queries, including ORM Queries, Relations, and its Associations.
Managing Server Logs
You can configure Logging frameworks such as NLog, log4j, Serilog, log4net and logback, and more. Stackify collects different logs to monitor the system:
- Application logs
- Windows Event
- Web server logs (IIS, Apache, Nginx)
Code Level Profiling
It involves monitoring memory usage, CPU for the components or code level. This process, however, adds overhead to the application and may affect the application’s performance. Retrace uses an optimized method to minimize the overhead with efficient performance.
Some of the metrics for code profiling are,
- CPU Usage
- Does background task affects the performance
- Collecting more data regarding the profiling and analysis
New Relic Core Features
Easy to set up real-time instrumentation and analytics
New Relic Dashboard provides metrics such as response time, throughput, error rate, and transactions.
The analysis provides a clear understanding of the whole system’s performance. An APM tool needs to offer a profound experience and clear picture of the analysis for performance monitoring.
A drawback with profiling in New Relic is the system load spikes when it starts crushing data in the background.
Mapping Application Performance to the end-user experience
New Relic analyzes end-user experience through real-user monitoring, synthetic monitoring, and mobile app performance analysis.
New Relic provides a Deployment Marker to describe the impact of that code changes on your application. It’s important to understand this for better decision-making for the business requirement.
Error analysis in real-time with on-demand diagnostic tools
An APM tool’s essential function is to help the developer quickly understand the potential source of that issue and debug to find a solution when a problem occurs.
New Relic agents provide the ability to analyze errors using an error stack trace.
It provides a diagnostic tool such as Thread Profiler, which offers functionality to see a periodic sampling in real application traces.
Scout APM Core Features
In-depth Performance Analysis
Scout is an easy-to-use APM tool that requires a much simpler and streamlined setup process than New Relic or Stackify. Scout APM provides an algorithmic agent that digs through your application and provides in-depth analysis and insights. For example, it provides analysis on
- Slow database queries
- N+1 database queries
- Memory bloat
Fast and Efficient Transaction traces
Transaction traces analyze time spent on a single web request or execution of a single background job.
- While tracing transactions, Scout provides a complete breakdown of memory allocation and timing metrics which is crucial to analyze the performance bottleneck.
- On tracing SQL Queries to monitor the database performance, Scout indicates the row count returned by SQL queries which helps monitor the database.
- Another essential feature is, backtracking slow requests. There may be various reasons for a slow API request. Scout helps to backtrace it and ease the process of debugging the performance bottleneck.
Monitoring a database is crucial for application performance. An expensive query may cause other queries to run slower. So, it’s important to monitor and analyze them before significantly impacting your application.
- New Relic and Stackify show metrics for expensive database queries only, and while it can be good on a higher level, you need to understand how each query performs to optimize it. This is where Scout excels as the UI visualizes metrics for all queries, not just the expensive ones.
- Scout APM focuses on ActiveRecords. At the same time, New Relic monitors beyond ActiveRecords. (Active Records provide an abstraction layer between code and data. So you don’t need to write raw SQL queries. Object-relational mapping(ORM) uses this pattern).
- In Scout, it’s easy to compare a small slice’s performance with an average performance metric.
Usability and Dashboards
Stackify Dashboard has five sections: Dashboard, Monitoring, Performance, Errors, and Logs.
In the dashboard, you will see information about Health, Performance, and Errors. The Health section will show Availability, User Satisfaction, HTTP Error, and User Satisfaction calculated by Apdex. Logs or APM profiler will calculate HTTP Error metrics.
It will report how well your application performs overall as perceived by the users. The chart will describe your different requests such as Fast, Sluggish, Too Slow, and Failed requests.
In the Errors Section, you can see New, Regressed (or) All Errors. You can also see an overall error rate reported from exception logging or APM profiler.
New Relic UI
Web transaction time shows the time it took for each transaction. On the top right, is the Apdex score (User satisfaction).
In the middle, you get details about each transaction and its response time. Error rate shows the overall error rate and its average.
New Relic provides cross-application tracing if your app depends on another application you’ve monitored with NewRelic. It includes a list of expensive transactions and their details.
It shows all the web endpoints and their resource consumption. It also shows the top five web transactions and their throughput.
When you click on the web endpoint, it details its performance breakdown, throughput, and transaction traces. A Histogram displays the details about transaction response time.
Database Monitoring shows the top database operation by its time consumption, query time, and throughput. You can sort the database queriest by most time consumed.
Scout APM UI
Scout dashboard shows the overview of different categories. They are,
- Response time
- Memory consumption
- Apdex Score
Scout digs through the data and generates great insights into application performance. For example, it provides metrics and insights on slow database queries, N+1 database queries, errors, and memory bloat.