Table of contents
Modern application teams are struggling to adapt to new software development trends and challenges. Monolithic applications are being broken down into complex networks of interconnected services. These application services run on dynamic and ephemeral infrastructure in the public cloud and in private data centers. And applications are increasingly using cloud services that can easily scale without having to add server capacity.
New Relic APM is designed to help modern application teams exploit the latest technology trends to confidently move faster—which means reducing costly downtime, improving engineer productivity, and enabling high-performing applications that deliver differentiated experiences for customers.
With a host of vendors claiming to offer APM solutions for modern application teams, it makes sense to lay out exactly what makes New Relic APM the tool of choice to help modern application teams build better software.
1. Easy-to-set-up real-time instrumentation and analytics
An APM solution is not just a data-collection repository. Modern application teams require a solution that’s easy to set up and immediately indicates where their apps are experiencing performance problems. With New Relic’s easy-to-set-up SaaS model, engineers can quickly get up and running with visualizations that deliver opinionated insights on their applications, without the need for setting up expensive hardware or complicated custom dashboards. New Relic APM’s out-of-the-box overview screen not only displays basic data such as response time, throughput, error rate, and transactions, but also highlights which code is contributing the most to response time. That makes it easy to pinpoint the problematic code or dependencies in real time.
Instrumentation is what powers a clear understanding of application performance. Modern application teams require broad and deep instrumentation for diverse languages and frameworks. New Relic provides comprehensive monitoring for an industry-leading seven languages: Java, Node.js, Python, Go, .NET, PHP, and Ruby.
There’s also a native C/C++ agent to instrument and monitor applications written in C/C++ or other languages not supported out of the box.
And as organizations break apart the monolith into potentially hundreds of different parts, New Relic’s Service Maps feature delivers out-of-the-box and customizable dependency mapping across application components and services.
2. Flexible instrumentation and dashboarding
While it’s important to see value quickly with out-of-the-box instrumentation and dashboards, modern application teams need the flexibility to collect additional data to meet the unique needs of specific applications and industries.
The depth of data collected by New Relic out-of-the-box is complemented with several avenues for adding custom instrumentation, including API calls to the agents from inside your source code, XML-based custom instrumentation modules that can be packaged with the deployed applications, and UI-based addition of instrumentation without a code deploy. Custom attributes can be added to each transaction event so that you can match application performance factors to critical business information, providing the ability to do fine-grained problem analysis and create rich dashboards.
3. Guides appropriate engineer responses
A key requirement for effective software development is the ability to clearly and appropriately notify engineering teams when something goes wrong with their application—ideally before the issue impacts customers. An APM solution must be able to relay information that guides application teams toward the right response for the issue at hand.
New Relic enables alerting on any telemetry collected from the agents, from standard metrics like response time to custom events. And New Relic alerts integrate seamlessly with popular incident-response tools such as PagerDuty, VictorOps, Slack, and HipChat.
But finding and resolving issues before they affect your customers is the ultimate goal. Using multiple techniques including artificial intelligence and machine-learning algorithms, New Relic Applied Intelligence (NRAI) helps guide engineers to the most important performance abnormalities. New Relic Radar, for example, provides a personalized feed of cards designed to highlight abnormal behavior within the application that may be worthy of deeper exploration, such as a subtle week-over-week drift in response time or an identified N+1 query problem. Dynamic baselines, meanwhile, uses historical data to predict logical thresholds for what constitutes an abnormality. You can direct this capability against any metric to make sure your teams are alerted early before an incident spirals out of control.
4. Correlates application performance to end-user experience
Applications exist to serve a business purpose and a customer. If the customer is dissatisfied, the application is failing. Modern application teams need to evaluate the customer impact of performance at every level of the stack from the frontend to the server side.
A deep understanding of your end-user experience starts with a clear assessment of the experience delivered by the mobile app or browser. As more and more user experience logic moves to the client side, an estimated 80% of the user’s wait time comes on the frontend. The New Relic platform provides clear visibility into the end-user’s experience through real-user monitoring, synthetic monitoring, and mobile app performance analysis.
Along with a better understanding of the frontend, however, engineers need a way to connect frontend performance to server-side performance, particularly as organizations deploy code more frequently across the entire stack. New Relic measures Apdex in all the applications it monitors, which establishes a single, easy-to-understand metric for understanding the health of the app based on response time and error rate.
It’s also important to track how such metrics change with each code deployment. New Relic’s Deployment Markers clearly delineate each deploy and the impact of that code change on the application and end-user experience, all within a single view.
5. Connects application and infrastructure performance
As organizations shift toward microservices running on dynamic infrastructure, application health is increasingly tied to the health of the underlying infrastructure. Engineers need to understand the performance of the application within the context of the dynamic infrastructure it’s running on, whether it’s running in a container, in your own data center, on Amazon Web Services, Microsoft Azure, Google Cloud Platform, OpenStack, or wherever you deploy your applications.
New Relic Health Map provides a prioritized, high-density view of your applications with a clear linkage to the infrastructure hosts upon which the applications depend so you can easily pinpoint which part of the application stack is causing the issue. If the issue turns out to be on the host, engineers can easily dive into New Relic Infrastructure to further explore the problem.
6. Rich, detailed transaction data
A full understanding of application health requires many types of data. New Relic agents use multiple data types to count and measure every single request so that you have performance visibility down to the method level. New Relic event data records what’s happening to your application at a particular moment in time (such as a transaction or a transaction error) and helps you more deeply understand every request to your application. New Relic’s metric time-series data complements event data by describing the performance of your application over a particular time period (such as average response time or throughput), which can help you understand the overall performance of the application and its components.
In addition, New Relic agents collect sample transaction traces, SQL queries, and stack-trace details down to the individual line number from which the database call was made. This detail is collected for the slowest transaction approximately every minute.
New Relic’s mix of data types offer complementary benefits. Metrics provide a better summary experience and help point you toward the best places to focus your time. Events offer deeper diagnostic information and richer dimensionality (you can filter events related to a specific user or class of customer, for example), while traces let you dive into the details of a particular transaction or SQL query. Importantly, all of this data is available on demand and can be iteratively queried and explored in real-time through New Relic Insight’s custom query language, NRQL.
7. Real-time error analysis with on-demand diagnostic tools
A fundamental promise of New Relic APM is to help you troubleshoot an issue with your applications. When an incident occurs and time is of the essence, engineers need to quickly understand the potential source of the issue and dive deeper to find a resolution. And as the stability and performance of the application improves over time, an APM solution should provide metrics that let the whole organization see the measurable value of their reliability practices.
New Relic provides a powerful ability to analyze errors. With New Relic agents, you can see the error stack trace, message, and the line of code from which the error was thrown. Engineers can also slice and dice the errors discovered in their applications over time and save hours of manual analysis by using NRAI to instantly identify what’s different about their error transactions.
New Relic APM agents run inside of applications, so they are uniquely positioned to perform deep diagnostics and profiling. For example, New Relic’s diagnostic tools include a Thread Profiler that gives customers the option to see a periodic sampling of full-stack traces for all the threads running in production.
8. Integration with DevOps tooling
DevOps success requires not only effective monitoring and measurement, but also a diverse set of capabilities enabled by multiple tools. DevOps teams need an APM solution that seamlessly integrates with the tools used to build, deploy, and support software, including common logging, configuration management, and incident response tools as well as robust APIs for further platform flexibility.
In addition to integrations with incident response tools like Slack, Jira, and PagerDuty (as highlighted in capability number three), New Relic APM seamlessly integrates with major logging tools such as Splunk and Sumo Logic to connect machine health and application performance, not to mention popular configuration management tools like Chef and Puppet. The Splunk add-on for New Relic, for example, gives developers and IT operations teams a set of dashboards and saved searches that combine New Relic and Splunk data into one view.
Just as important to many customers, New Relic provides REST APIs so they can programmatically interact with and extend New Relic’s flexible platform. For example, a customer can use Jenkins to programmatically deploy a code change to a pre-production environment, kick off a load test, mark the deployment within New Relic using an API, and then go to the New Relic Deployment Markers page to see how the change impacted application performance.
9. Cloud-service instrumentation
Success in the cloud requires instrumentation to clearly see the measurable results of your migration at every stage of the journey. You need established benchmarks before, during, and after the migration— not to mention deep visibility into the dynamic cloud services that help deliver the full value of the cloud.
New Relic’s cloud-based platform lets you easily instrument your application at every step. The agents collect detailed application performance data as your app moves from on-premise to the cloud, with no additional configuration required—and it also lets you instrument important cloud services like Amazon DynamoDB.
10. Built to scale
The valuable insights provided by New Relic APM are available at all times—even on your organization’s biggest day.
Whether it’s Black Friday, Cyber Monday, the Super Bowl, or Election Day, New Relic’s Software-as-a-Service architecture means you never have to worry about provisioning or configuring new servers for your monitoring to handle spikes in traffic. Our platform seamlessly processes more than 1.5 billion events and metrics per minute. Data that’s critical to understanding your applications is available on demand when it’s needed, without additional setup.
The health of your applications can have a big effect on your business. So it’s essential to consider the bottom-line impact that visibility into your application performance can have on your organization.
By providing real-time insight to your applications, New Relic APM can help optimize your software to reduce costly downtime. Deep insights to the performance of your applications can boost the productivity and innovation of your engineers, enabling them to create more value for the business. And high-performing applications improve your organization’s digital customer experience, positioning you to build loyalty and grow the business faster.