Welcome to Application-centric Server Monitoring

Application-centric. And business transaction-focused. These two qualities are the heart of what sets AppDynamics Server Monitoring apart from other server monitoring tools, and make it such an essential component of a unified monitoring solution.

“Application-centric” in that it takes a top-down approach. Typical legacy approaches employ a bottom-up strategy, meaning that they look at and alert on individual infrastructure components — but if there is an alert, there’s usually no indication if or how the issue is actually impacting application performance and the user experience. Server Monitoring looks at what’s happening in the application itself, and if there is an issue, quickly pinpoints root cause wherever it is in the infrastructure. It’s a quicker, more efficient way to make sure users are having an ideal experience, and to resolve issues more quickly if they are not.

“Business transaction-focused” in that it follows a transaction, whether it’s search, checkout, form-filling, link click-throughs — whatever the business needs to follow, however it needs to follow it — throughout the application environment, wherever that transaction travels. So as the transaction traverses within and across servers, Server Monitoring traces and follows it, watching the entire time for anything that could compromise successful completion of the transaction and therefore impact the business. It illuminates the real consequences to the business of performance issues and outages.

In short, because it is application-centric and business transaction-focused, Server Monitoring helps to ensure not only that server infrastructure is functioning properly, but that users are having a successful experience and business outcomes are being optimized.

Server Monitoring, an essential component of AppDynamics Unified Monitoring, alongside end-user, application, and database monitoring, is now available for beta. It is fully integrated into the AppDynamics Application Intelligence Platform, and provides the data needed to quickly identify and resolve application performance issues.

AppDynamics Server Monitoring solution provides extensive host visibility, extended CPU, network and storage performance metrics, and detailed process list information.

The Server Monitoring dashboard provides comprehensive summary of all server resources – CPU, memory, storage and networking. In addition, the dashboard also provides details about  top ten processes consuming CPUs and Memory on Dashboard.

Screen Shot 2015-06-22 at 12.27.03 PM

Detailed storage and network pages provide additional details required for troubleshooting application performance issues that are potentially caused due to storage or networking issues. Storage ( Volumes ) page shows detailed information on disk usage, I/O utilization, I/O rate, I/O wait time and I/O operations per minute for each attached physical disks or shared storage. Similarly Networks page provides overall health, sent/received network throughput and incoming/outgoing packets per sec. for each network card.

AppDynamics Server Monitoring solution provides complete visibility into all the processes running on the server. It provides detailed information on all the processes running on the server. For example, process count, thread count, start time, end time, CPU usage, CPU trend, memory usage, memory trend, command line info, user, user group, process ID, etc.

Screen Shot 2015-06-22 at 12.27.14 PM

Customers can also set-up health rules and policies to automate actions to resolve the performance issues. Health rules are created using the health rule wizard.

Health rules establish the health status of an entity by defining levels of performance based on metrics; for example, CPU utilization (for a server) is too high.When the performance of an entity affected by the rule violates rule’s conditions, a health rule violation exists.

Screen Shot 2015-06-22 at 12.27.28 PM
Policies provide a mechanism for automating monitoring and problem remediation. You can proactively define the events that are of greatest concern for keeping your applications running smoothly and then create policies that specify actions to start automatically when those events occur.

An action is a predefined, reusable, automated response to an event. You can use actions to automate your runbooks. A policy can trigger an action in response to any event. You configure which actions are triggered by which events when you configure policies.

Server Monitoring offers a host of capabilities that make it indispensable, including application-server performance correlation, dynamic baselining, scalability analyses, and an intuitive UI that makes it easy even for non-infrastructure experts to drill down and solve application issues. It’s easy to deploy on-premises, in the cloud, or as a hybrid, requires zero configuration, can be up and running in minutes, and consumes less than two percent overhead.

Find a full list of Server Monitoring features and sign up for beta here.

Servers and their affiliated infrastructure — including VMs, mainframes, containers such as Docker, load balancers, etc. — are a critical link in the end-to-end journey that applications and their associated transactions take to power successful user interaction. If you don’t have insight into servers and and the applications and transactions they support, you don’t have a complete monitoring solution and are putting user experience at risk. With Server Monitoring as part of AppDynamics Unified Monitoring, you gain confidence that there are no blind spots in your end-to-end picture of application performance.

Server Monitoring – Think You’re Covered? You’re not!

Server monitoring a foundational component to any data center monitoring architecture but it has become a crutch and a deterrent to successfully building out a holistic monitoring platform. Servers exist to run applications and you will never properly monitor applications with server monitoring alone. In this blog we will explore what server monitoring is, some of the available tools, benefits, drawbacks, and how to move to the next level.

What is server monitoring?

Server monitoring consists of monitoring operating system and associated hardware metrics. It’s the view of the world from the perspective of the server but never from inside of the running processes. It includes the basics of CPU, memory, disk, and I/O metrics but those are simplified categories of the real underlying metrics like CPU sys time, CPU wait time, used memory, free memory, disk queue length, % disk used, network collisions, adapter transmit rate, etc… Server monitoring is used by every IT organization in some shape or form.

What are some server monitoring tools?

When I was a Unix System Administrator I used tools like sar, vmstat, nmon, top, topas, and netstat to monitor my servers in real time. In the Windows world I used perfmon for my real time monitoring needs. I also had other tools at my disposal for alerting and keeping historical metrics. Some popular versions of those tools are BMC Patrol, HP OpenView, Nagios, Zenoss, Cacti, Zabbix, Ganglia, GroundWork, and Hyperic.

All of these tools are useful. All of these tools also fall woefully short of achieving the goal of minimizing application downtime and maximizing application performance.

vmstat

vmstat output from a Linux server. Is there any problem with the running application?

What’s the problem?

The problem is that none of the server monitoring tools are capable of knowing how your applications are performing. Some of them can probe your application to see if it is available or not but none can tell you why your application has ceased to function.  No server monitoring tool can tell you any of the following:

  • What is the response time of every request to my application?
  • What components of my application are involved in any of my transactions and where is the slow down?
  • How does the application code execute in the run time?
  • What part of the application code is slow?
  • What application functionality is used, how often, and how does it perform?
  • What application functionality is throwing exceptions and what are they?
  • Did a slow external service call impact my application response time and by how much?

Without answering those fundamental questions you don’t stand a chance of restoring application service in minutes instead of hours or days. Jonah Kowall of Gartner recently wrote a post titled “Got Nagios? Get Rid of It.“. I’d suggest you take a moment to read it when you can.

nagios graph explorer

Nagios HTTP check response times. Is the application experiencing problems as a whole? Problems with individual functions? Are there application Errors?

nagios performance charts

Nagios server monitoring charts.What does this tell us about our application?

What’s the solution?

Many companies have turned to log monitoring and analytics as a solution to this problem but as my colleague Dustin Whittle explained, “If all you have is logs, you are doing it wrong!“. Log file monitoring is nice to have but it also can’t answer many of the questions posed in the above section without a lot of customization. The best solution to the problem at hand is to use the latest generation of Application Performance Monitoring (APM) tools. APM tools understand the inner workings of your applications. They can see the code executing, the entry and exit calls to the application, the transactions flowing through and across multiple application components, exceptions and their associated impact, and much, much more.

Application Flow Map

Dynamic application flow map showing all application components.

Business Transactions

Business transactions automatically detected, tracked, and classified.

Call Graph

Call graph of a single business transaction with all methods, timing, and remote calls.

What’s the impact?

Ultimately APM products offer a tremendous amount of value. Here are just a few of the benefits of using APM:

  • Reducing MTTR from hours/days to minutes.
  • Faster development due to less time tracking down bugs.
  • Fewer bugs released because they are easier to identify and remediate.
  • Faster QA cycle due to rapid problem detection, isolation, and resolution.
  • More stable production environment due to better development and QA.

If you’re still using server monitoring and log analysis to try and figure out your application problems you’re wasting valuable time and doing a disservice to the business you support. Server monitoring and log analytics complement a good APM tool and strategy. There are still too many organizations today that are doing the bare minimum of server monitoring. Do yourself and your business a favor and start down the path of a holistic monitoring strategy by trying AppDynamics for free today.