Change isn’t without its detractors in terms of people and systems. A misstep in expanding application performance monitoring (APM) across full-stack application monitoring can result in the degradation of availability and performance, stopping a digital transformation effort in its tracks. Avoid this at all costs.
Deploying a full-scale digital transformation is a vast undertaking well beyond the scope of this brief article. However, here are a few tips on how to successfully navigate your journey and ensure your applications remain available and usable.
Build on Existing Monitoring Support
When faced with a significant change in an environment or process, people—and even corporations—sometimes try to reinvent the proverbial wheel. Though it may be compelling to consider developing something new, in most cases, it’s unnecessary and prohibitively expensive. What you require already exists; it just needs to be built upon.
According to the
SolarWinds® Cloud Confessions 2020 report, “Nearly nine in 10 tech professionals are using APM tools in their environments.” The following are some of the specifics:
- 59% of professionals are using APM for monolithic (traditional on-premises) application development architectures
- 40% of professionals are using APM for N-tier, service-oriented architectures
- 39% of professionals are using APM for microservices
However, an estimated 40% of tech professionals suffer from a lack of awareness of existing
APM solutions and struggle to determine the ones best suited for their needs.
Whether your environment is on-premises, hybrid, or pure cloud, you likely require end-to-end performance monitoring for some combination of commercial off-the-shelf (COTS), software as a service (SaaS), and custom applications.
If your current APM tool set is inefficient or inadequate, consider doing the following instead of scrapping the lot and starting from scratch:
- Take the time to perform a thorough inventory of your applications, including who built them, their business necessity, and the current available metrics for availability and performance
- Assess your current APM tools against your existing applications and other available tools
- Determine which of your existing APM solutions are applicable or can be adapted to your monitoring and support needs; then, decide which tools need to be added to your arsenal
- Develop a plan by closely working with all stakeholders, including application support and monitoring teams, to integrate new and existing solutions with the goal of constructing a comprehensive monitoring dashboard
Automate Monitoring
In IT, the fewer tasks your team manually performs, the faster and more agile the team members will be. Systems designed to perform repeatable processes are powerful tools capable of significantly reducing business costs. These processes include writing an application, testing it, and deploying it into production. However, if application monitoring isn’t on board the automation train, quick visibility into app availability and performance is lost, and downstream business needs won’t be met.
Automating an APM solution should mirror the rest of the application development and deployment process and provide artificial intelligence (AI) with enough metric data sets to deliver on the promises of automated root cause determination, proactive remediation, and more. The automation should also scale based on organizational size, application performance requirements, and volume of end-user access. Elements of AI can also be used to enhance these use cases, ranging from automated responses to specific triggers through statistical analytics and advanced modeling approaches, as applicable and appropriate.
Validate Performance
If the automation process needs to be extended from application development and deployment to monitoring, then application stack validation needs to come along for the proverbial ride.
Many organizations still perform QA testing for apps with legacy tools based on the “old school” model of servers and networks. However, this practice is as archaic as the slide rule in a world dominated by virtual domains, hybrid environments, and cloud services. Under the original paradigm, Ops is relegated to application management through manual troubleshooting, and Dev is pulled in to service this effort as a separate entity instead of being a full partner.
The use of previously established performance analytics in the development and testing phase provides DevOps with a clearer prediction of how an application and its resource demands will behave when it’s released to the production environment. Performance analytics operating across the infrastructure and application as a single, cohesive unit can then validate application performance, creating higher confidence in how the application will perform in the production environment due to a fully correlated data set spanning infrastructure and applications.
One Solution to Bind Them: One Monitoring Tool for All
There’s a vital need for full visibility of the entire application stack using as few tools as possible. Wide collections of disparate solutions—particularly those developed for legacy Dev and Ops silos—are wasteful in terms of time and effort and reinforce the silo separation of teams, sending the DevOps relationship back into the technological Stone Age.
The tools used by a consolidated DevOps team working toward end-to-end application monitoring should reflect this philosophy by being intrinsically unified. To successfully monitor and manage this digital transformation, the goal is to have information regarding app performance correlated with infrastructure performance presented on a few dashboards (or even a single dashboard). These dashboards should present detailed sets of analytics of the application stack, including application, database, server, virtual host, and container performance metrics.
The digital transformation pathway must lead from varied and many to unified and standardized.