Application Performance Management/Monitoring

APM: Helping Overcome Custom App Management Woes

In any economic climate, every business deploying custom apps needs to assess their APM needs to protect their business

There are numerous use cases for custom-made apps, but only one reason they’re deployed: Something off-the-shelf just won’t cut it.

When we launch a new kind of digital business, or if operations are far too complex for an existing commercial application, we need at least one custom app. No matter the business model—whether it’s a startup food delivery service, online shopping app or an app designed to manage a complex enterprise supply chain, we need custom apps. And this need is only accelerating over time, with the growth in deployment of custom apps exploding.

But managing custom apps comes with complications, even before the pandemic exacerbated those complications. Custom apps are written on top of the latest architectures. In the past, app code was monolithic, of a single piece. Modern apps are built from services linked together dynamically—a series of small interlocking parts—and each of those parts is responsible for far less than previous monolithic apps.

As opposed to the simple one-to-one relationships between applications and infrastructure, modern applications and their supporting environments present layered and nuanced arrangements from an interaction perspective.

Modern applications (and their supporting infrastructure) never stop being dynamic. Services continuously change and are reconfigured. They are moved around and redeployed like so many LEGO pieces under robotic control. Eventually, these operations add up to hundreds or thousands or even millions of separately executable code elements. And to be clear, the custom app continues to evolve long after it’s left production. It’s an everlasting rollout.

It’s great when it works—quick to value, easy to build and deploy. But it can be terrifying when something goes wrong because of the increased complexity, heterogeneity and dynamism. And the entire operation must be managed—by you, while you work from home.

2 Scenarios Brought on by COVID-19

Custom applications generally must be highly available. They must provide an engaging user experience, which translates into end-to-end application performance—even when demand is unpredictable. The negative consequences of bad performance include lost revenue, market share, customers and degradations in the company’s market reputation.

Multiple new scenarios are occurring as a result of the COVID-19 era.

Here are the salient two:

COVID-19 Accelerates Unpredictable Demand

From a performance standpoint, the biggest challenge right now is unpredictable demand. Unpredictable demand for transactional work from applications causes bottlenecks. Bottlenecks, in turn, bring about slowdowns or outages.

Add to that, some apps not considered business-critical before this crisis are now far more important than even a few months ago. Creators of software designed to help businesses carry on—such as video conferencing software—are experiencing high demand. While it’s good to experience success, it’s also chaotic when the spike is unexpected.

Unpredictable demand leads to slowdowns. It’s not easy to gather the team together and figure out why customers are reporting, “your website is slow,” or “some things aren’t working.” Your remote web application support team (which might be your e-commerce support team for a revenue-generating site) has no idea how to start solving these problems based on general descriptions of the issues.

Meanwhile, other apps that were once in demand, such as travel sites, are nearly idle. The staff at these companies are likely creating busywork, wondering how long this new paradigm will last. Eventually, someone will need to cut costs.

COVID-19 Makes You Cut Costs

The worldwide economy has taken a massive hit. I’ve been around long enough to see this trend three times: When the economy flops, companies slash costs—and they tend to do it with an ax, not a scalpel.

If you have a travel site, demand is down. How can you tell where to cut costs? How can you identify exactly how much infrastructure resource is needed to support decreased demand? And can you safely dial back subscriptions for cloud resources such as Amazon or Azure?

Manage the Crisis With APM

To manage during these times, you must measure what you must manage. You need application performance management (APM), a class of monitoring focused on the performance of the application itself, the users of the application and the complete infrastructure stack supporting the application.

APM Monitors for the Unpredictable

APM focuses on application availability (is it up), performance (response time and latency), throughput (calls per second or transactions per second) and the error rates of the application’s transactions. It does so fully cognizant of all supporting infrastructure, whether on-premises, hybrid or full-on public cloud.

If your site is “running slowly,” you can use APM to discover if the problem is affecting everyone all over the world or only in specific geographies.

APM’s synthetic transaction checking allows you to look at the transactional performance and availability of your web applications from the perspective of web application users. APM’s code profiling and transaction tracing allow complete visibility into the performance of all the elements of the application itself, the services of which it is comprised and how they interrelate to compete for underlying infrastructure resources. Finally, APM’s log management enables marrying events and issues related to applications and infrastructure to the end-to-end application performance picture. Together, this provides a comprehensive picture of performance and availability—from the end user all the way down through all elements of the infrastructure, the application and service, down to a specific line of code.

Stay Cost-Effective With APM

APM shouldn’t be expensive to procure and maintain. It shouldn’t consume valuable developer resources to implement and maintain in production.

First-generation APM tools were pricey and difficult to use, mandating specific application developer expertise and involvement during application development. Thus, companies reserved APM only for apps important for reducing management complexity and the risk and costs associated with poor availability or performance. Luckily for business, most of those high-priced vendors have transitioned to modern architectures and are now pure-play SaaS.

Next-generation APM isn’t difficult. Nor is it necessarily expensive. It also protects revenue by protecting and enhancing the online business results of the company—including online revenue, customer satisfaction, market share and company reputation.

If you have a CI/CD process through which you’re always pushing new releases into production, the APM tool should be able to help. It should be able to automatically adapt to new releases as they’re deployed, without requiring any manual reconfiguration. If you’re using either a canary or a blue/green deployment process, the APM tool should also provide you the crucial information you need to decide whether to proceed with each release (or roll it back).

And if demand is down for your site, APM can identify precisely how much infrastructure resources are needed to support your decreased demand, allowing you to safely de-provision and save money by dialing back subscriptions for cloud resources at Amazon or Azure. APM leads to savings.

Getting Started With APM

Before deploying APM, inventory all your apps. In my experience, companies often break down their apps into two or perhaps three tiers.

For tier-one apps, money is no object. They must instrument the application because it’s their business. If you are a financial site where 85% of your revenue is associated with your online retirement information system, it’s mission-critical. You’re going to instrument every aspect of that application. You have no choice.

Meanwhile, tier-two apps may have become critical because of the crisis. Or, those apps have not been instrumented because of APM’s reputation for cost and complexity. Now that its threshold of complexity—and costs—have been significantly lowered, it’s time to instrument those apps.

There may be a whole new class of risks to your business model because of COVID, which makes today an excellent time to reassess what’s newly important to your business and what’s not.

We’re at an inflection point, and every business deploying custom apps needs to assess their APM needs to protect their business, whether they’ve been adversely or positively affected by this crisis. It’s time to instrument your apps and stop running blind.

David Wagner

Dave Wagner is a senior manager of product marketing at SolarWinds with over 20 years of experience focused on IT performance and optimization. In his current role, Dave works closely with product management and corporate marketing to ensure alignment in go-to-market strategy and messaging for the SolarWinds application performance monitoring (APM) products. Prior to joining SolarWinds, Dave served as CTO of OpsDataStore, business development principal for TeamQuest, and vice president, marketing and sales at Solution Labs Inc.

Recent Posts

IBM Confirms: It’s Buying HashiCorp

Everyone knew HashiCorp was attempting to find a buyer. Few suspected it would be IBM.

11 hours ago

Embrace Adds Support for OpenTelemetry to Instrument Mobile Applications

Embrace revealed today it is adding support for open source OpenTelemetry agent software to its software development kits (SDKs) that…

19 hours ago

Paying Your Dues

TANSTAAFL, ya know?

21 hours ago

AIOps Success Requires Synthetic Internet Telemetry Data

The data used to train AI models needs to reflect the production environments where applications are deployed.

3 days ago

Five Great DevOps Jobs Opportunities

Looking for a DevOps job? Look at these openings at NBC Universal, BAE, UBS, and other companies with three-letter abbreviations.

3 days ago

Tricentis Taps Generative AI to Automate Application Testing

Tricentis is adding AI assistants to make it simpler for DevOps teams to create tests.

5 days ago