Unlocking Insights and Visibility Into TIBCO With APM Software

TIBCO Software is a global leader in integration, API management and analytics. The company recently was named a leader in the Gartner 2018 Magic Quadrant for Full Life Cycle API Management report for the fourth consecutive time. TIBCO’s traditional strength in application integration is based on its enterprise service bus (ActiveMatrix BusinessWorks), message-oriented middleware (Enterprise Message Service and FTL), and off-the-shelf adapters for applications and other platforms.

TIBCO offers real-time analytics and operational intelligence, including process-intelligence Business Activity Monitoring (BAM) (in AMX BPM); business intelligence BAM, visual data discovery and predictive analytics (in Spotfire and R); business rule processing (in AMX Decisions); two stream analytics CEP platforms (BusinessEvents and StreamBase); and other capabilities.

Critical Banking and Infrastructure Dependencies Require Reliability

In large financial institutions around the world, critical processes such as online banking, mortgages and payments rely on TIBCO. If TIBCO systems were to go down, banking customers wouldn’t be able to get mortgage information, borrow money, or even pay their bills. Indeed, the importance of keeping TIBCO systems up and running is extremely high. It’s equally important for TIBCO users to identify issues, provide solutions, and respond immediately to potential problems as quickly as possible.

More Insights, Please

TIBCO’s product line is extremely powerful, but it can be complicated and expensive for many small and midsize business process management (BPM) projects. As I’ve seen quite a few times throughout my career, TIBCO can be a black box for companies, which usually lack the ability to see inside the code. The reason is that TIBCO users are not exposed to code, but instead use a GUI called TIBCO Designer to create integration projects for their enterprise environments. The good news is that application performance management (APM) software can provide insights into how TIBCO is working under the hood.

When you intend to monitor something as immensely complex as TIBCO, you need a good plan. The first step is to identify what is important and what is not. Therefore, your initial focus should be on identifying the most important business flows on the TIBCO side, and defining the most important business transactions on the APM side. Mapping the relationship between TIBCO workflows (customer/business journeys) and AppDynamics Business Transactions—a key monitoring component consisting of all required services in your environment—is the next logical step. (For a deeper dive into the philosophy of configuring BTs, read How to Identify Impactful Business Transactions in AppDynamics.)

Once mapping has been established, TIBCO users should be able to understand and ultimately resolve performance issues, as well as optimize infrastructure and application setup. But that’s just the beginning.

Dashboards for Real-Time Metrics

AppDynamics can enrich TIBCO monitoring by comparing real-time EMS metrics side-by-side with metrics measured by our Java agent in handy dashboards, providing useful insights into TIBCO’s performance. This is achieved by configuring the AppDynamics TIBCO EMS Monitoring Extension. You will need to give this extension access to your TIBCO EMS server. Our machine agent then uses the extension and feeds the data directly from the EMS server to AppDynamics, where we can display it side-by-side next to real-time metrics provided by our Java agents.

How About Some Alerts?

Of course, users also need to know when something is wrong—and not only by looking at a nice dashboard! This is why you should utilize the power of AppDynamics Health Rules, which leverage dynamic baselines to establish performance thresholds and configure them for Business Transactions. Once these rules are defined and configured, you’re all set: When AppDynamics detects a potential issue, it triggers a Health Rule and sends out a notification. This enables the user, with just a few clicks, to examine the Business Transaction snapshot and get code-level details for every anomaly, even under extreme load. Therefore, AppDynamics’ three-click drill down allows TIBCO customers to pinpoint issues in a very short amount of time.

In many respects, TIBCO is still a grey area for companies, as it is difficult, if not impossible to see its inner workings. (As mentioned above, TIBCO users never see the internal code, but instead rely on the GUI-based TIBCO Designer.) AppDynamics’ monitoring brings more insight into how TIBCO works behind scenes, and gives users a better understanding of how their configuration is tied to TIBCO code. Although it might not be meaningful to the user to see TIBCO code errors, this information could prove valuable to TIBCO support and lead to faster mean time to resolve.

A High-Level Overview

For companies using TIBCO as a backbone for their services, a cross-application flow view is exceptionally useful for seeing which applications are communicating with TIBCO. The screenshot below shows a practical, graphic representation of a TIBCO user’s environment in AppDynamics.*

AppDynamics can create an intuitive diagram of TIBCO workflows, such as one showing the health of each TIBCO operation translated into one or more Business Transactions.

Above you see a slightly different view, one more business-focused and based on normal APM data. However, if you need more detailed business-focused dashboards with funnel graphs, a number of unique transactions, or full end-to-end duration of each transaction, there is a way! All this and much more can be achieved by using AppDynamics Business iQ. (Read how AppDynamics Business Journeys provide a unified, end-to-end application view and help solve complex business problems.)

Global financial institutions depend on TIBCO’s real-time analytics and operational intelligence to keep their operations running efficiently. But TIBCO can be a black box for companies, which need a powerful APM solution to gain code-level insights into their environments and to resolve issues quickly.

*All screenshots shown in this article are not actual representations of TIBCO’s environment.

Introducing Real-Time Business Metrics

I’ve been looking forward to writing this blog for some time.  I have worked with many enterprise customers to document the pain they solved using AppDynamics and a common question I always ask is “What was the actual business impact of that slowdown or outage?”, the result is that most customers guesstimate the revenue impact of slow performance, and are generally nervous about calculating such number.

They’re nervous because they might expose to the business how much revenue they are costing them each year thru incidents and outages. That’s definitely one way to look at things. However, if you flip this problem around IT could actually show the business how much revenue it created as a result of agile releases or initiatives such as SOA, Cloud and Virtualization.

Imagine if a new application feature suddenly caused a 5% increase in revenue? Wouldn’t it be cool for IT to share this fact with the business? With AppDynamics new real-time business metrics IT can do just that. Here’s how it works…

1. Monitoring Business Transactions

A business transaction is a type of user request in your application. AppDynamics can auto-discover these and monitor the response time of such requests, this allows IT to see the real end user experience and detect problems instantly as they happen. For example, below is a Checkout transaction from one of our customers that was requested 4,639 times, it had 53 errors and over 700 were classified as slow from their normal performance baseline.

1

2. Extracting Revenue Metrics from Business Transactions

Once you starting discovering and monitoring the performance of business transactions, the next step is to define which key business data you want to extract and report on. In AppDynamics you can define “Information Points” which are essentially custom metrics from extracting method parameters in application code. For example, in the below screenshot I created an information point called “Checkout Revenue” and specified the application code where AppDynamics should extract the revenue values, in this example it was the method signature:

com.online.business.action.CheckOut.confirm() 

I then created a custom metric called Checkout Revenue based on a SUM operation on the getter chain:

getShoppingCart().getAdjustedTotal().getAmount().intValue()

AppDynamics will now extract all the checkout revenue values from every transaction and make this available as a new metric “Checkout Revenue” which can be reported in real-time just like any other AppDynamics metric.

Business Metrics Wizard

3. Correlating Application Response Times with Application Revenue:

Now that AppDynamics is monitoring the performance and revenue of your business transactions, its possible to correlate and report these metrics over-time so IT can understand their relationship. Take the below example, which shows the revenue per minute vs. the response time per minute of the application. As the screenshot shows, its pretty clear what the real business impact of this slowdown was to the business. Now imagine the reverse,  imagine if the application got faster and that have a positive impact on revenue and transaction throughput? Wouldn’t it be great to track this information over-time so you can see the real impact of agile release cycles?

Correlating revenue and performance

4. Creating Real-time Business Dashboards

Today nearly every monitoring dashboard is about application response times, or the health and resource of infrastructure. So when something glows red or flashes on a dashboard it denotes something very bad is happening. The reality is that most dashboards glow red everyday when performance and resource spikes. When is a problem really a problem? With real-time business metrics you can now mash and fuse business KPI’s with your application and infrastructure metrics. So when something turns red you can see the revenue impact of such issue.

real-time business metrics dashboard

5. Being Pro-Active with Business Alerts

Looking at monitoring dashboards periodically (like the above) is the first step to being pro-active with business impact. However, if you want to be truly pro-active you need to automate this entire process and let your monitoring solution do the alerting for you. The great thing with AppDynamics is that it can self-learn the normal value of every metric it collects, and create a dynamic baseline (threshold) over-time. This allows it to accurately detect deviations caused by abnormal activity. So just like we can detect deviations in application performance we can now do the same for your application revenue or order throughput. For example, one of our customers Orbitz said:

“If we’ve sold less than $1,000 in five minutes, there is probably a problem, even if it’s 2 o’clock in the morning. If our sales have flatlined, that’s a critical problem. I don’t know how to be any clearer.”

Geoff Kramer, Manager of Quality Engineering at Orbitz Worldwide

The ability to alert on business impact vs. application or infrastructure performance can be a game changer. It helps IT truly align with the priorities and needs of the business, allowing them to speak the same language and manage the bottom line.

You can get started today with real-time business metrics by signing up and taking a free trial of AppDynamics Pro here.