In the parable of the six blind men and the elephant, each blind man comes upon a different part of the elephant - tail, tusk, trunk, side, leg, and ear. Each think that the part they find is the full elephant, and so has quite a different view about what an elephant is. That made me think about how seeing parts is not enough to describe the whole.
We see this all the time in IT. “My application is working fine. I called your application and did not get a reply. It must be your application that is having a problem.” That might be correct, but maybe the problem is somewhere else – network, security, or another application or database behind the application we called. How do we know?
Unfortunately, this problem is becoming exacerbated as number of parts increases. As companies are moving to the cloud, there are some applications in the cloud – perhaps on multiple clouds, and some on-premise. SaaS applications are commonly used. Many businesses are moving toward a digital ecosystem where assets are accessed from other businesses. Applications themselves are being broken into smaller microservice architected applications. All these disparate and disbursed assets need to work together consistently, to serve the customer.
Diving one level deeper, we see that connectivity requirements differ between these solution components. Based on your scenario, you may kick off an action based on an event (e.g. customer enters store) or have a mobile app or web UI that invokes an API. Frequently this is the target point for the accusation that something is not working, because everything that happens behind this is invisible to the calling application. To the consuming application, the API or Event is not working! But is that really where the problem is?
Let’s look beyond this first layer. Often the API or event is simply the entry point to that much larger application mixture. APIs may invoke some applications directly and some applications may directly react to events occurring. But frequently behind the API or event are application integration capabilities that can execute more complicated transformations to non-standard interfaces for existing applications, allow for diverse and complex integration patterns, and support transactionality across multiple back-end systems. We may also require assured delivery, so payments are made once and only once. And we may do a reconciliation or reorder of supplies on a periodic basis requiring large amounts of data to be transferred. All of this, of course, needs to be done securely. The API call may expose a symptom of a problem, but perhaps the issue is in one of these follow-on applications or the flow of data between them.
What we do know is that the cost of outages or slow response times is very large. We’re all familiar with the cost of IT downtime. Our challenge is the number of points of failure is increasing and we must identify faster the specific point where the outage or bottleneck occurred.
In response to this issue, IBM recently released the IBM Cloud™ Pak for Integration - Operations Dashboard. The dashboard can quickly analyze performance and latency problems across your integration components to ensure applications meet service level agreements. It includes cross-component monitoring and tracing capabilities for all your cloud integration platform infrastructure capabilities working across clouds and on-premise deployments. DevOps personnel, developers, and performance engineers can use it to visually follow the journey of a transaction – from its entry as an API, to an integration flow, to placement into an MQ queue, and beyond.
Operations Dashboard can distinguish call paths and latencies as the transaction flows between components. It is based on an Open Tracing standard to monitor and troubleshoot microservices-based distributed systems.
The dashboard is non-invasive, with zero code product requirements to ensure quick adoption. Whether your applications are called by APIs, reacting to events, use application connectivity, messaging, files, or any combination, the operation dashboard provides visibility across the complicated application infrastructure.
As I write this, I am preparing for my next international business trip to speak to clients and at a conference. My travel plans are complicated, including three countries, multiple airlines, train (there is a scheduled train strike in France), multiple taxis, Ubers, and country-unique ride share applications, hotels, rental cars… even the potential for bad weather. I wish I had an operations dashboard to help ensure this trip goes as planned!
To understand more about IBM’s thoughts on Digital Business and Agile Integration visit the IBM Agile Integration web page. IBM Cloud Pak for Integration is IBM’s complete hybrid integration platform providing all forms of integration: API Management, Application and Data Integration, Event Streaming, Enterprise Messaging, High Speed Data Transfer, and Secure Gateway. You can find more information about IBM Cloud Pak for Integration at the IBM Cloud Pak for Integration website.
If you have questions, please let me know. Connect with me through comments here or via Twitter @Arglick to continue the discussion.