Cross-Controller Federation: Ensuring Application Visibility and Correlation

Over the last few years, we have seen an evolution in application topologies.

For example, when AppDynamics first started monitoring applications 10 years ago, a business application was relatively self-contained, with the corresponding tiers and nodes representing the majority of the application’s business logic. As time passed, we saw more distribution of functionality, where an application’s tiers and nodes were more likely to be a subsystem of something larger. To help correlate the business transactions through these various subsystems, AppDynamics introduced cross-application correlation. However, application topologies continued to evolve and today, they’re even more distributed, with multiple teams working on multiple applications. As a result, the responsibility for monitoring an application is distributed as well.

Our Winter ‘17 release addresses the challenge of managing these distributed applications with what we call Cross-Controller Federation.

Customers can now get complete correlated visibility and quick drill-down into the line of code, irrespective of where the application components and controllers are deployed, because controllers can participate in a federation. Federation establishes a platform of trust — allowing application logic to be divided however best for the teams who need to manage it, including in different AppDynamics Controllers — and yet continue to fully correlate business transactions across these applications and Controllers.

With Cross-Controller Federation, our customers can achieve limitless scalability and flexibility to deploy application components across multiple public and private clouds. What’s more, applications managed by AppDynamics can now solve for the following scenarios:

– Large organizations that have deployed multiple Controllers to accommodate various business applications.

– Organizations that have different Controllers based on geographical location.

– Organizations that are typically isolated from one another. For example, a client and vendor who have separate Controller accounts, but business applications and services that affect each other.

The core building block of a federation setup is as simple as establishing a relationship between two accounts, referred to as federated friends. Once a friendship has been established between two Controllers, all inter-account business transaction correlations will be made visible from one Controller to the other.

The diagram below illustrates Cross-Controller Federation flow between the application(s) in “Account A” and “Account B” on different controllers.

FederatedFriendship2.png

The two applications in “Account A” participate in a standard cross-application flow, while the interactions between “Account A” and “Account B” are made possible by the new Cross-Controller Federation feature.

How Does Cross-Controller Federation Compare to Cross-Application Flow?

To help visualize this, let’s look at an example of cross-application correlation. We have two applications (named App_Upstream and App_Downstream) registered under the same account. Each application has two tiers, with a single node on each tier. In this example, each upstream tier makes an HTTP call to a specific downstream tier.

Here’s what cross-application dashboards would like for both App_Upstream and App_Downstream.

downStreamCrossApp.png upstreamCrossApp.png
App_Upstream – Two upstream tiers are shown making cross-application exit calls to App_Downstream. App_Downstream – Two downstream tiers are shown receiving incoming cross-application calls from App_Upstream.

Without Federation

Now, let’s reset our thoughts and imagine that these two applications are registered under different accounts. Without a federation, these two applications will know nothing about one another. The respective application dashboards would look like this:

unresolvedUpstream.png

unresolvedDownstream.png

App_Upstream – Two upstream tiers are shown making HTTP exit calls to unresolved backend – without any correlation details.

App_Downstream – Two downstream tiers show some traffic but have no idea where requests are coming from.

Federation – With Mutual Friendship

Now with a federation – i.e. establishing mutual friendship between the two accounts, both App_Upstream and App_Downstream will become visible to one another, with each having the ability to see federated cross-application correlation.

In order to view a federated application dashboard, users must double-click an external application node and log-in to the other Controller (Note: if single sign-on (SSO) is configured, the user can bypass the additional login).

federatedUpstream.png

federatedDownstream.png

App_Upstream – shows exit calls made to App_Downstream registered under account: customer2

App_Downstream – shows incoming HTTP calls from App_Upstream registered under account: customer1

As application teams start using microservices architecture, the scalability requirements have exploded, necessitating APM scale. With Cross-Controller Federation, AppDynamics is taking unified monitoring to the next level.

Want to learn more about AppDynamics? To see if we’re the right monitoring solution for you, schedule a demo today.

References / Learn More

– Cross Application Flow

– Federated Cross Application Flow

– SAML Authentication

– Configure Federated Friendship

Q&A: Add Apache Web Server to your Unified Monitoring Toolkit

Last month Amod Gupta and I presented in a webinar titled “Add Apache Web Server to your Unified Monitoring Toolkit”.

I kicked off the webinar by providing an overview of AppDynamics Unified Monitoring solution and an overview of Apache Server Monitoring solution.

Screen Shot 2015-09-09 at 11.23.17 PM.png

Figure 1. Application Flow Map with Business Transaction starting from an Apache Server

Amod followed me to discuss how the Apache Web Server Agent, a key part of AppDynamics Unified Monitoring Solution, lets enterprises:

  • Discover and check the health of your Apache web server(s)
  • Alert in the case of any anomalies
  • Perform a root cause analysis on issues quickly

Here is the presentation that was used during the webinar.

http://www.slideshare.net/appdynamics/add-apache-web-server-to-your-unified-monitoring-toolkit

We had a very interactive sessions after the prepared content was presented. We answered many questions asked during this Q&A, but many of these questions remained unanswered. We responded to all the unanswered questions to the individuals who asked the questions.

Here are the top unanswered questions and answers from the webinar. You can listen to the questions and answered that were covered during the webinar at the on-demand recording of the webinar.

Q: What are the costs for the apache module?

A: Current pricing for Apache Server Monitoring solution is $3,300 per OS instance (Pricing as of September 08, 2015)

You could get volume discount in case you need to purchase more than 10 licenses. In addition, first time customers purchasing 1-10 units can get starter discount.  You can find latest pricing and more details at http://www.appdynamics.com/pricing/ .

As you may know, AppDynamics offers a freemium pricing model with complete access to AppDynamics product for free for 15 days. After 15 days of free trial period, customers can either purchase the products or keep evaluating the product forever under lite plan.

Q: If we multiple instances of Apache Server running on the server, do we create multiple proxy for each? Or will one proxy support multiple apache instances?

A: One proxy will handle all the instances. Our proxy has built in support for multi-tenancy.

Q: What about reverse-proxy, does it capture any performance metrics?

A: Yes it captures the same performance metrics.

Q: How does the mod_appdynamics work in case of security agents like siteminder agent or Oracle Access Manager agent?

A: It treats calls going out to siteminder as exit calls and shows you the time spent on mod_sm  which translates as the time spent by a request in the authentication module.

Q: At what priority level is the agent loaded? and does it determine the time taken between modules…. example Webserver->Siteminder agent->webserver->mod_ajp->webserver?

A: It shows you the time spent by a request in each module and it shows you the time spent by request in apache. It doesn’t show the time spent between one module and another.

Q: Do we have separate agent and machine agent for Apache web server like java agent?

A: Yes, that’s correct.

Q: Where can we find documentation for apache web server configuration?

A: Documentation for Instrumenting Apache Web Server monitoring can be found at https://docs.appdynamics.com/display/PRO41/Instrument+Web+Servers . Additional details on the Apache Web Server monitoring solution can be found at https://docs.appdynamics.com/display/PRO41/APM+for+Web+Servers .

Q: Do we require only one license for multiple web server agents running on a single box?

A: Yes, that’s correct.

Q: Are you referring to the Apache HTTP Server that comes with the RedHat Linux? We don’t use the default Apache that comes with the OS instead we installed our own Apache at a separate location on the server. Will AppDynamics detect this apache server?

A: Yes, it will detect and monitor your Apache Server. It doesn’t have to be the web server that comes bundled with any OS. It doesn’t even have to be on RedHat Linux.

Q: Do you support an environment where F5 load balancer is load balancing in front of apache server?

A: Yes, in this case, we’d start monitoring the requests when they hit apache server. We also have an extension for F5 Load Balancer that can help you monitor the metrics from F5 and then you can correlate them with rest of your application environment metrics in AppDynamics.

Q: Is there any business transaction detection we need to configure for the web server agent? Any special instrumentation that’s needed, or should we expect things to work out of the box? I’m using apache 2.4.

A: You should expect things to work out of the box. You can configure Business Transactions naming based on URL segments but by default you should expect to see automatic business transactions being detected and named using the last two segments of the URL.

Q: How much overhead we should expect while having AppDynamics agent on webserver?

A: AppDynamics agent does not add significant overhead. Overhead depends heavily on the hardware and load on the box.

 

To learn more about the Apache Web Server Monitoring solution, please watch the webinar at the on-demand recording of the webinar .

EMA Report: The Need for Unified Monitoring [INFOGRAPHIC]

One of the first things I learned when I started working in application intelligence was how central the application economy is to connecting components like code, data, and design, with concepts like IoT. Applications drive the network between enterprise and their end-users. As its economy skyrockets, the back-end requirements to scale that growth clearly require the right APM solution with unified monitoring capabilities to ensure seamless transaction and performance throughout workflow processes. 

We partnered with Enterprise Management Associates (EMA) to understand more about this ecosystem, and the pain points observed by the professionals who build and optimize it.

One of the findings from the survey was extremely striking: The survey of over 300 application management professionals found that only 30% of companies have properly adopted application-specific solutions utilizing unified monitoring. The majority are still trying to manage complex applications within their ecosystem using siloed and underutilized tools. That leaves 65% of organizations who need over 3 hours to troubleshoot application problems–of which only 27% are detected overall. 

Find out more about the EMA’s research and insights with the full report on APM and Unified Monitoring at http://www.appdynamics.com/ema/. You can also read my colleague Anand Akela’s insights into the report here.

EMA Infographic: Unified Monitoring from AppDynamics

Franken-Monitor Doesn’t Give Insightful User Metrics [COMIC]

Following up on our previous comic where Frank’s boss declares they’re adding database monitoring, Frank and his boss have another encounter about user metrics. Since Frank, and his company, are using several tools to monitor their users the data they gain doesn’t give them clear results or context. A lot of the supposed “insights” are actually conflicting or non-actionable.

With AppDynamics Unified Monitoring, seamlessly connect any of the AppDynamics product modules to gain actionable insight all in a single pane of glass.

Learn more about Unified Monitoring here!

 

Got Apache? Now Add it to your Unified Monitoring toolkit

In one of the webinars I presented towards the end of June What’s New in the AppDynamics Summer ’15 Release?, we polled more than 200 attendees about their application environment. I anticipated seeing a higher number of responses for Java and .NET environments, but, I was a bit surprised to see more than 57% of respondents said they use Apache Web Server powering their applications.

Screen Shot 2015-08-10 at 3.43.41 PM.png

Following the webinar, I searched around the web for Apache market share and found that Netcraft has been running a monthly Web Server Survey since August 1995, exploring the Internet to find new websites. They send an HTTP request every month to each site, determining the web server software used to support the site and the operating system.

According to Netcraft’s July 2015 web Server Survey, 51% of all active websites are powered by an Apache server. This supports the response we received from the webinar attendees mentioned above.  

Screen Shot 2015-08-10 at 3.06.44 PM.png

In the Summer ‘15 Release of AppDynamics, we introduced the Apache Web Server monitoring solution that helps enterprises monitor their Apache Web Server in real-time, correlate transactions traversing across your distributed environment, and diagnose performance bottlenecks while running in a production or development environment.

It is now a key part of AppDynamics Unified Monitoring solution which provides the application-centric integrated monitoring platform that traces every user interaction from end-user client to application code to third-party services/databases and supporting infrastructure to enhance DevOps collaboration and eliminate siloed management costs and challenges.

Entry points for business transactions in any application management solution have traditionally been the application server, but, now the business transactions can start from Apache Web Servers. Our solution automatically captures three key performance indicators (KPIs ) — Load, Response Time, and Errors — and then baselines them and alerts any abnormalities from that baseline.

Ease of administration and flexibility are some of the key reasons why the Apache Web Server is one of the most popular and powerful web servers in the world. This flexibility and ease of use comes from Apache’s modular design. These pluggable Apache modules or “mods” allow administrators to modify Apache to meet their needs and tailor for their use cases. The Apache Monitoring solution from AppDynamics includes deep web server troubleshooting info including performance details of various Apache modules. For example, you can see Apache Server Mod_Proxy details in the exit calls in call drill down screenshot below.

apache4-1220x0.png

Given the popularity and importance of Apache web servers, we scheduled a webinar Add Apache Web Server to your Unified Monitoring Toolkit tomorrow, August 13 at 11:30pm PT with Amod Gupta, Principal Product Manager, responsible for Apache Web Server.

I will kick-off the webinar with an introduction of AppDynamics Unified Monitoring and quick overview of the new Apache Server Monitoring solution. Amod will then cover the solution details that includes:

  • Apache Web Server Monitoring Architecture

  • How to install and run

  • Feature details

  • Real use cases

  • Live demo

Learn more register for webinar following the link: Add Apache Web Server to your Unified Monitoring Toolkit.

 

Too many tools, not enough big picture: A case of Franken-monitoring

In recent interview, an IT operations director told us, “We frankly have too many tools, and many of them weren’t performing to our expectations.”

If you are an enterprise ops leader managing complex applications, chance are pretty high that you can relate to that statement.

At AppDynamics, we call this “Franken-monitoring,” a situation characterized by many, usually too many, siloed tools — for application, server, database, end-user client, etc. — that provide varying levels of disparate visibility into IT applications. The challenges with this approach are several-fold:

  • Tools have minimal integration or common context, which makes it near impossible to manage the application or its business transactions.
  • Tools are designed for subject-matter experts, so it’s hard to provide value to the ops team as a whole.
  • Tools have high total cost of ownership, since every tool has to be independently procured, installed and managed, and staff have to be trained in their use.

How rampant is this problem? To get some real data, we recently worked with a well-respected analyst firm, Enterprise Management Associates, to get to the bottom of this.

For this study, EMA analysts surveyed IT professionals from companies of all sizes across both North America and Europe. Potential respondents were filtered to include only those actively involved in enterprise application development/management/delivery at the executive, middle manager, or “hands on” line staff levels.

The respondent mix was approximately:

  • 1/3 Europe and 2/3 North America
  • 0% small, 55% mid-sized, and 25% large companies
  • 45% executives (director or above), 25% middle managers, 30% line staff

The results were nothing short of astounding!

untitled-graphic (15)

  • Over 65% of enterprises have more than 10 monitoring tools
  • 43% have over 25 monitoring tools.

Read the full report here.

Just about every user of monitoring tools complains about the challenges of having too many tools without any situational awareness. Current approaches to integrate these tools with solutions like MoM (manager of managers) or CMDB (configuration management database) have for the most part failed, because it is hard to stitch together these disparate solutions from different vendors.

Gartner recently did a survey that pointed exactly to this challenge. As shown in the chart below, the key reasons (besides price) for poor APM adoption were, indeed, the complexity of the tools and poor integration between tools.

Reasons Why APM Tools Are Not More Widely Used

Screen Shot 2015-07-14 at 9.23.14 AM

Source: Gartner Survey Analysis: End-User Experience Monitoring Is the Critical Dimension for Enterprise APM Consumers (June 2015)

These challenges are effectively addressed by our recently released Unified Monitoring solution — it solves the problems of siloed monitoring and glue-ware integration. AppDynamics Unified Monitoring is the industry-first, application-centric solution that traces and monitors transactions from the end user through the entire application and infrastructure environment, to help quickly and proactively solve performance issues and ensure excellent user experience.

Leading enterprises such as Paychex have adopted AppDynamics Unified Monitoring and eliminated siloed solutions. As Jason Briggs, monitoring engineering manager at Paychex, puts it, “AppDynamics replaced five tools we once used to try to troubleshoot application problems. Today, everyone goes to AppDynamics to quickly determine the root cause of the issue.”

Read the full EMA report on monitoring tools.

AppDynamics: Unified Monitoring for the Enterprise

This article originally appeared on Intellyx blog

Rounding Out Platform with Synthetic Monitoring

A decade ago, the Application Performance Management (APM) market was a dusty corner of enterprise IT, focusing on keeping creaky enterprise apps up and running.

Today, the world has changed. Applications have changed. Enterprise IT is undergoing rapid reinvention. As a result, APM is now at the crux of the digital transformation trend. And squarely in the center of this firestorm is San Francisco-based AppDynamics.

Modern applications consist of a mélange of interconnected elements, from the front end to the cloud to the enterprise back end. This modern definition of the application as well as the full power of today’s big data analytics combine to underscore the true significance of AppDynamics’ application intelligence capabilities.

In 2015, AppDynamics is rounding out their Application Intelligence Platform with the addition of browser synthetic monitoring to their existing real-user monitoring (RUM) capabilities, enabling customers to have a complete suite of web performance testing capabilities.

Synthetic monitoring depends upon running test software that simulates real user behavior across the global Internet, while RUM leverages code running in users’ browsers and mobile apps to monitor actual user behavior. Synthetic monitoring, therefore, is particularly useful for performance testing as well as testing functionality that is not yet live.

AppDynamics is combining these various monitoring capabilities into a Unified Monitoring offering. They built this Unified Monitoring on a single platform – their Application Intelligence Platform – to monitor and manage end-user experience in the context of business transactions.

AppDynamics’ secret sauce is the end-to-end nature of this platform, as it traces the entire business transaction path from the end-user device through the application code and third-party API calls to servers, databases, and other infrastructure, as shown in the figure below. 

ADUMAppDynamics Unified Monitoring (Source: AppDynamics)

The Unified Monitoring solution leverages a common data platform, making it easy to install and manage, and provides consistent and shareable interfaces for all users. This approach replaces the miscellany of siloed, non-integrated, infrastructure-specific tools that characterize the monitoring solution for many enterprises.

Ongoing Value for AppDynamics Customers

AppDynamics ties the new synthetic monitoring tool to its existing application intelligence capability, offering detailed, data-driven performance insights and user experience analysis. The image below illustrates how the Unified Monitoring dashboard correlates RUM and synthetic monitoring data.

ADUM-screenshotAppDynamics Unified Monitoring (Source: AppDynamics)

Because of AppDynamics’ modern architecture and unified code base, its synthetic monitoring product appears simply as an additional tab in the unified product interface above. Customers simply have to turn it on to use it. They can then leverage all of the application intelligence analytics AppDynamics has already built into its platform to analyze both synthetic and real user data.

AppDynamics Unified Monitoring identifies and resolves web application performance and availability issues. In particular, the platform offers automatic dynamic baselining, which helps companies reduce false positives. Customers can schedule tests whenever they want, and run them as long as they want – and because the tests are running in the cloud, they pay for what they use.

The cloud-delivered visibility is a key strength of AppDynamics’ synthetic monitoring, because it offers worldwide, always-on coverage, flexible configuration, and rapid, on-demand deployment, thanks to remote synthetic agents running on Amazon AWSIBM SoftLayer, and numerous other cloud environments around the world via the ComputeNext cloud marketplace. (AppDynamics is also rolling out expanded performance management support for applications running on AWS in the current release of its platform. Stay tuned for a future BrainBlog post for further analysis of AppDynamics’ instrumentation of AWS.)

The Intellyx Take

Central benefits of the Unified Monitoring approach, beyond the cost savings benefit AppDynamics can pass along to customers, include the ability to combine synthetic and real user monitoring, for example, to enable customers to run A/B tests across the two monitoring approaches. There is also no practical upper limit on the number of synthetic users a customer can call for, due to the elastic nature of the cloud.

Furthermore, the fact that AppDynamics designed their platform from day one to support the addition of capabilities like synthetic monitoring is now providing dividends, both to their internal development teams as well as to customers.

In today’s complex, dynamic, digital world, enterprises no longer have the luxury of leveraging siloed tools. Digital business transactions are end-to-end, and thus monitoring must be seamless and end-to-end as well. AppDynamics has understood this principle from the start, and the benefits of their early design decisions are now paying off.

Intellyx advises companies on their digital transformation initiatives and helps vendors communicate their agility stories. AppDynamics and ComputeNext are Intellyx clients. None of the other organizations mentioned are Intellyx clients. Intellyx retains full editorial control over the content of this article.

Unified Monitoring: This Is What The Future Looks Like

Seven years ago, when we founded this company, we had a vision of “one solution to rule them all” for software monitoring and application intelligence — one comprehensive platform that would capture user experience on any device, anywhere; trace business transaction performance across an entire application ecosystem; equip teams to quickly identify and resolve issues; correlate application data with business outcomes (at last!); and do it all through a single intuitive, unified interface that would help run and grow the business.

With AppDynamics Unified Monitoring, introduced with our Summer ’15 Release, that vision comes to life, now.

Now, one single solution traces business transactions from the end user all the way through the backend, including everything in between, whether it’s servers, databases, third-party API calls, Docker containers, whatever, and pinpoints the source of application issues in real time, at the code level. So teams can act quickly to resolve issues before they impact the user and the business.

“One solution to rule them all”

Recent research from EMA says that 65 percent of enterprises employ 10 or more individual monitoring tools to keep tabs on the health of their applications and associated infrastructure. With so many tools, how do you know where to look first? How do you connect the dots to know which issues are impacting application performance, and which are not? Few things perform at 100 percent, 100 percent of the time. So how do you know if it’s that minor degradation in database performance that’s slowing down your checkout process and spiking user abandonment? Or is it a server hiccup? Or a slow SQL query? (This might be why it takes 77 percent of enterprises more than five people-hours to fix the average performance issue, according to the same EMA study.)

Some enterprise IT departments try to duct-tape their siloed tools together to create some kind of broader vision, but it’s impossible to avoid the blind spots and limitations of each, and hard to get a single, accurate picture of everything that’s impacting your application. We call this “Frankenmonitoring,” because it’s a stitched-together ‘bottoms up’ monster of a monitoring solution. A certain private equity merger in the APM market announced last week comes to mind. That approach of cobbling together disparate tools and technologies is the exact opposite of our elegant top down Unified Monitoring solution which leverages a single integrated code base to tag and follow the business transaction to ensure and optimize customer experience.

At AppDynamics, we recognized from the beginning that the only way to create a truly unified monitoring solution was to build it from the ground up. And that’s exactly what we did, to provide comprehensive, end-to-end, application-centric monitoring in context of business transactions.

Why the business transaction matters

If you’re at all familiar with AppDynamics, you know we spend a lot of time talking, writing and generally waxing poetic about business transactions. We do that with good reason, because we believe it’s the heart of the most effective monitoring strategies, and it’s central to our Unified Monitoring solution.

Think about it. You’re not really monitoring code, or infrastructure, or even users. What would that tell you? Monitoring these elements in isolation will not provide you with the insights that you need to know  you’re successfully serving the user and generating positive results for your bottom line.

The user is only interested in the experience and performance of the the transaction they’re trying to complete, whether it’s a simple status update or a multi-step e-commerce interaction. Therefore what IT operations should focus on is the how the application and its supporting infrastructure — servers, databases, containers, microservices, etc. — handles the transaction. Because what matters most to the enterprise is to provide great customer experience and enable customers to successfully execute transactions. Because successful transactions are money in the bank.

And from a practical standpoint, transactions are the one thing that encompass the entire infrastructure, and so are the bellwethers for performance of everything. So when your monitoring focuses on business transactions, you can quickly identify and resolve the issues that impact users and the business, wherever they occur.

Welcome to the future of monitoring

AppDynamics Unified Monitoring is the industry’s first application-centric, integrated monitoring platform that traces every transaction, both synchronous and asynchronous, from end user through the entire application environment. It’s built to work as one solution, with one UI, one data platform, one installation.

Screen Shot 2015-06-22 at 12.36.45 PM

What exactly does it monitor? Pretty much everything that impacts business transactions: Applications and browsers, code, databases, servers, VMs, containers, storage, the network, third-party services/APIs, logs. As part of our Unified Monitoring solution, we’ve added Browser Synthetic Monitoring (beta); introduced enhanced and more powerful Server Monitoring (beta); and added support for Python applications, Apache Web Servers, and single-page Angular.js applications. Amazon Web Services and Docker containers are supported. And of course, we’ve tweaked and enhanced various functionality throughout the platform.

Role-relevant views.

While the great strength of Unified Monitoring is its comprehensive view of applications and their transactions, no matter how widely distributed or complex, it also provides situationally aware views and reports. Application support teams can get a consolidated view of potential problems, which they can use to forward the issue to the right experts. And specialists can see and get detailed data on whatever links in the chain are their responsibility — the database team can drill into detailed database stats, for example, in addition to having the big-picture ecosystem view. And finally, teams can come together in a Virtual War Room when needed for coordinated crisis management or ongoing performance optimization.

And it’s easy!

You have flexible deployment options with Unified Monitoring: on-premises, SaaS, or hybrid. There’s just one installation, with minimal manual configuration. Unified Monitoring auto-discovers and maps complex transaction flows, and automatically updates when there are changes. It automatically, dynamically determines performance baselines, and uses them as a basis for reporting. And it consumes less than two percent overhead, so it’s production-ready out of the box.

The days of toolkits heavy with single-purpose, siloed tools are fast coming to an end. AppDynamics Unified Monitoring is here to accelerate their demise, with a comprehensive solution that provides a single, unified, end-to-end view of what matters most: the success of business transactions, resulting in satisfied users and positive business outcomes.