App Performance Monitoring: Seeing Into the Cloud
App Performance Monitoring: Seeing Into the Cloud
See what problems the cloud brings to measuring your app's performance and how you can overcome those challenges, including which metrics to follow.
Join the DZone community and get the full member experience.Join For Free
Learn how to migrate and modernize stateless applications and run them in a Kubernetes cluster.
Unfortunately, it doesn’t work that way. The vendor is supporting dozens, hundreds or thousands of clients, and chances are you aren’t their biggest customer or their biggest priority. Unless you complain to them that they’re not meeting the SLA goals, they aren’t going to be looking at what’s happening to your instances.
Plus, your users are still going to turn to you first for help, anyway, because you almost certainly aren’t giving them all the direct line to call the vendor. And even though you’ve moved apps to a SaaS model, they’re likely used to calling their in-house IT team for help with any technology issue. How do you manage application performance when the apps run on servers you can’t see and networks you don’t control?
For all the benefits of software as a service, using these cloud-based applications has one big drawback: There’s a major loss of visibility into where and how your applications are running. That wouldn’t be a problem if the vendor kept an eye on application and network performance the way you would, but that’s just not happening.
So how will you know when the SLA isn’t being met? When you start hearing complaints from end users about performance? The problem with that is that user complaints don’t mean there’s a problem with the vendor’s SLA. There are plenty of problems that belong to you, not the vendor, to solve, including network issues, application configuration issues and problems with user desktops. You need application performance monitoring to watch over cloud-based applications. It should let you know when you can solve a problem on your own or when you need to call the vendor for resolution.
Cloud Keeps You From Seeing Your Applications
Running applications in the cloud obstructs your visibility in a few different ways. First, you may not even know where your server is, and you have no insight into how loaded it is. The network isn’t under your control. You may have a firewall—or the SaaS vendor has a firewall—that blocks your existing application performance monitoring tools from doing their job.
Business units may contract for SaaS applications without letting you know about it, so the first time you learn of the application’s performance needs is when a user complains they’re not getting that performance.
Users don’t necessarily access the apps from their desktop; what does it mean when their performance issue happens over a WiFi connection from their phone? What’s your responsibility in that situation? What are they even connecting to? URLs don’t necessarily mean anything when there are content delivery networks in the way.
Clear Vision Is Needed
Even without user complaints, you’ll want to monitor your applications.
First, it’s better to be proactive instead of waiting for users to report problems. Even if users aren’t complaining, monitoring can show you which applications are taxing your network, and if they aren’t business related, you can enforce policies to shut them down. You’ll also want to know if you’re getting at least the network and application performance you’re paying for.
It’s also not just about meeting current requirements. Application performance monitoring and network monitoring is needed for you to predict future requirements and know when you’ll need to expand capacity.
Proactive monitoring makes things easier for IT, but, ultimately, it’s for the business’s benefit. The problem with poor SaaS performance isn’t just that it frustrates users but that it lowers their productivity. With network and application performance monitoring that can see into the cloud, user productivity is increased through better application performance plus faster ticket resolution.
Peering Through the Cloud
Because you have so little control over the technology that delivers SaaS, a tech-focused monitoring approach doesn’t work. When it comes to the cloud, user experience metrics are the key.
Getting those kinds of metrics needs a tool that’s able to get past the firewall and track end-to-end performance. Synthetic transactions let you test performance as if you were a real user. The advantage of synthetic transactions is that they see the entire system as if they were a user so you can capture very specific metrics. You don’t need any access rights to the systems you’re monitoring other than a user login.
Users access cloud systems from everywhere: from your main headquarters, from a branch office, from their desktop at home or a smartphone in a coffee shop. Performance testing that can run from all those locations is needed to get the full picture of how your users see the network.
Published at DZone with permission of Christine Cignoli , DZone MVB. See the original article here.
Opinions expressed by DZone contributors are their own.