Application performance monitoring (APM) solutions are among the most essential tools for IT today. As organizations undertake transformational initiatives such as cloud migration, container orchestration and microservices, they need to be able to manage performance of their business-critical applications and end-user experience across complex and sophisticated technology landscapes. Monitoring from a resource perspective — by looking at CPU, memory or disk utilization — is no longer enough.
Furthermore, looking at the infrastructure tier-by-tier does not cut it too. Since applications rely on multiple tiers of hardware and software to work together, what is needed is an APM solution that cuts across tier boundaries and provides an end-to-end perspective of performance. Not only should an APM solution be able to depict the end-user experience, it should also provide sufficient diagnosis so IT teams can be able to pinpoint the cause of an application slowdown: is it due to the network, or database, or application code, or virtualization platform or storage?
Clearly, APM tools are ideal for an application owner or a line of business owner to track the performance of their key applications. But these tools have broader applicability to different stakeholders in an organization. In this blog, we will review the teams and functional departments that can make use of an APM tool and how they could put it to work.
1. Application Manager and LOB Owner
■ They are mainly responsible for driving the application strategy to meet business outcomes.
■ Their main goal is to achieve the revenue goals of the organization. From an IT perspective, they are interested in achieving high application availability, great performance and functionality to meet the service levels expected by their users.
■ Application managers are also interested in tracking customer demand over time to plan for expansion and capacity.
■ APM tools provide centralized observability and continuous insight into application availability and performance.
■ Application managers can use APM tools to track the digital user experience and compare these with the promised SLAs.
■ Application managers use business analytics provided by APM tools to understand the customer journey, so they can look at optimizing the application usage and revenue.
■ APM tools allow application managers to quantify and see the revenue impact of poor transaction performance.
2. Application Architect and CTO
■ They are responsible for selecting the technology and platforms used for their applications.
■ Their goal is to ensure that the application delivers a great user experience and helps the organization achieve its business goals.
■ They keep an eye on technology trends, so they can futureproof the application architecture to support new requirements.
■ They analyze the medium to long-term performance of their applications and the individual tiers supporting them using APM tools to understand where performance bottlenecks lie.
■ They analyze APM tool alerts and reports to identify optimization strategies that can allow the organization to maximize application performance and usage.
■ Analysis of application performance in non-production environments, under load, to determine hot spots is also a focus of theirs.
3. Application Development
■ Application developers must ensure that the functioning and performance of their applications is aligned with user needs.
■ They are responsible for detecting and fixing application code defects including bugs, slow queries, crashes, exceptions, inefficient or erroneous code, memory leaks, etc.
■ To ensure minimum downtime of their applications, application developers are expected to detect and fix issues quickly.
■ APM tools are important for application developers. They help identify application code-level issues that developers need to fix. By highlighting the exact source of a problem, APM tools greatly help developers narrow down the areas of code that they must focus on.
■ Increasingly applications are not designed to be monoliths; they may depend on third-party, remote services. APM tools help identify times when application slowness is caused by third-party services.
■ APM tools empower AppDev teams to prove when it’s not a code issue (e.g., could be an infrastructure or database issue) that’s affecting application performance.
4. Application Support and Helpdesk
■ Application support teams are responsible for the upkeep of the applications. They need to monitor applications 24×7. As a result, they have a more real-time view of performance than application architects do.
■ They also must triage helpdesk tickets quickly. This includes determining if a problem is being caused by an application code issue, a third-party service, an infrastructure issue, etc. Application support teams must then route the tickets to the right personnel and monitor them to closure.
■ APM tools proactively alert application support team to performance issues, so they can act before users notice.
■ Topology views and request flow maps provided by APM tools help application support teams determine the exact tier that is causing a problem.
■ APM tools help application support teams differentiate a problem caused by a coding bug from an issue caused by improper configuration of an application (e.g., insufficient memory for a Java virtual machine) or an issue in the web container.
■ User experience monitoring (synthetic and real user monitoring) can help isolate region-specific issues (e.g., slowness from a specific location) and respond to user complaints quickly.
■ The DevOps team is responsible for the agility of application rollouts (new release, change, etc.). They develop automation to enable continuous delivery.
■ They must understand the impact of application release on service performance, security and reliability.
■ They set up notifications and automated actions based on specific events.
■ The APM tool integrates with the DevOps toolchain. It can detect new commits, releases and builds and track performance changes. It can correlate performance changes with code commits and builds, thereby highlight situations where new code changes can cause performance issues with key business applications.
■ The APM tool must provide means by which instrumentation can be automated when deploying the application, so little/no manual intervention is necessary.
■ The correlation between release management and application performance allows the DevOps team to collaborate with the Application Development team, allowing for quantifiable feedback to be provided to development.
■ The APM tool can monitor the DevOps tool chain itself. Telemetry in the APM tool can enable reporting of bugs, incidents reported, etc.
6. Database Administrators (DBA)
■ DBAs are responsible for monitoring, maintenance and tuning of the databases used by the business applications.
■ They need insights to troubleshoot database issues faster.
■ They face a couple of challenges: First, poorly designed application queries to the database server can impose a heavy load on the server, slowing its performance. Secondly, application support teams often complain that “the database server is slow” and they need tools that can help demarcate database server problems from poorly designed queries or inefficient database schemas.
■ APM tools provide DBAs a correlated and contextual view of database performance. They can clearly see if application performance is being affected by the performance of the database server or not.
■ APM tools can identify database server bottlenecks such as insufficient buffers, hot data files, storage issues and so on, and alert DBAs to such anomalies.
■ DBAs can use APM tools to identify the most time-consuming queries issued by an application. By analyzing these queries, DBAs can recommend ways to optimize the queries or suggest changes to the database schema (e.g., new indexes) that can reduce application response time.
■ Analysis of blocking activity at the database server level also highlights query inefficiencies (e.g., missing database hints that can cause unnecessary table locks).
7. IT Domain Expert
■ Domain experts are responsible for configuring and administering their respective infrastructure tier (virtualization, storage, network, container, cloud, etc.)
■ Their focus is on management and maintenance of their respective infrastructure tiers.
■ Monitoring tools used by the domain experts mainly focus on the usage and performance of their tiers in isolation. APM tools provide the domain experts with a different perspective. They can see how applications use the infrastructure and where performance slowness arises.
■ With APM tools, domain experts can easily see how the changes they make at the infrastructure level impact user experience and application performance.
■ By correlating infrastructure and application usage patterns and trends, domain experts can determine ways to optimize the infrastructure to enhance application performance.
8. IT Operations
■ IT operations teams are responsible for upkeep of the applications and infrastructure end to end.
■ They are expected to troubleshoot issues fast and meet SLAs. In order to do so, they need to be able to triage problems quickly and get the right domain experts involved.
■ APM tools help make the IT troubleshooting process change from reactive to proactive.
■ By using APM tools, IT operations teams can monitor the infrastructure end-to-end.
■ Machine learning and analytics capabilities of APM tools help reduce false alarms and make fault isolation and root cause analytics more accurate.
■ Historical performance and resource usage trends can be used to fine-tune day-to-day operations.
9. CMO and CRO
■ Their main focus is on revenue generation for the business. They are concerned about increasing traffic to the web application and conversion of visitors.
■ To enhance revenue, they focus on minimizing bounce rate and improving visitor engagement.
■ APM tools provide business analytics, enabling marketing executives to track the customer journey and measure customer satisfaction.
■ Marketing executives can use APM tools to track web application experience and to determine how to optimize the visitor journey for better customer engagement and conversion.
■ APM tools can analyze transaction failures and purchase abandonments to report expected revenue loss to the business. This is an important measure of business efficiency.
So, we saw how an APM tool serves the interests of various personas in an organization and provides full stack visibility. For any digital business service to be delivered, managed and maintained, APM is an integral part of the IT arsenal. Regardless of whether it’s an SMB organization or a large enterprise, an APM solution will definitely enable you to deliver enhanced application performance and digital experience for your end-users. Ready to get started? Try it for free today.