Event Bus Transaction Monitoring for Multi-Application Debugging

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In service-oriented architectures, it is challenging to obtain a comprehensive view of transactions processed by multiple applications, making it difficult to debug and tune performance, as existing monitoring techniques lack end-to-end analysis capabilities and require manual log comparison across applications.

Innovation Solution

A system and method that utilize a TCP/IP-based transaction monitoring system, where each application generates events and transmits them to an event bus, which are then organized by a monitoring module to provide an integrated end-to-end view, including real-time alerts and statistical data, allowing for comprehensive transaction analysis without requiring changes to individual applications.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If individual application-specific data logs are generated for each application, then each application's performance can be monitored, but a complete comprehensive view of the system cannot be obtained and manual log comparison is required

Engineering Contradiction:
Improvetransaction monitoring completenessVSAvoidmonitoring system complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The patent introduces an event bus as an intermediary component that sits between multiple applications and the monitoring module. Each application publishes events to the event bus, which then distributes them to the monitoring module. This intermediary architecture enables centralized collection of events from multiple applications without requiring direct integration between applications or complex manual log gathering, thus achieving comprehensive transaction monitoring while keeping the system manageable.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The event bus serves as a universal interface that can receive events from any application in the system, regardless of the specific application type or technology stack. The monitoring module uses a single unified approach to collect, correlate, and analyze events from multiple sources. This universal architecture eliminates the need for application-specific monitoring solutions and manual log comparison, achieving comprehensive system-wide monitoring through a single multi-functional platform.

Inventive Principle:
Principle #6Universality (Multi-functionality)

2Loss of information

If manual log collection and comparison from each application is performed, then comprehensive system view can be obtained, but the process becomes tedious and inefficient

Engineering Contradiction:
Improvetransaction information completenessVSAvoiddebugging and tuning efficiency
Core Design Contradiction:
Loss of informationVSProductivity

Solution Approach 1:

The patent implements preliminary action by having applications pre-structure their events with standardized formats and metadata before publishing to the event bus. The monitoring module receives these pre-prepared events in a uniform format, eliminating the need for manual log collection and ad-hoc data gathering. This preliminary structuring of data enables automated correlation and analysis, significantly improving debugging and tuning efficiency while maintaining complete transaction information.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The monitoring module continuously collects events from the event bus, analyzes them in real-time or near-real-time, and provides feedback about system performance, bottlenecks, and anomalies. This automated feedback loop eliminates the need for manual log comparison by continuously monitoring and reporting system state, enabling efficient debugging and performance tuning while maintaining complete visibility into transaction flows across all applications.

Inventive Principle:
Principle #23Feedback

3Measurement precision

If end-to-end transaction analysis across multiple applications is enabled, then comprehensive performance view is achieved, but system complexity and integration requirements increase

Engineering Contradiction:
Improveend-to-end transaction analysis capabilityVSAvoidevent collection and correlation complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The patent segments the monitoring architecture into distinct modular components: individual applications that generate events, a central event bus that transports events, and a monitoring module that analyzes events. This segmentation allows each component to be developed, deployed, and maintained independently. The event bus handles the complex task of event routing and distribution, while the monitoring module focuses on analysis, thereby reducing overall system complexity while enabling comprehensive end-to-end transaction analysis.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The event bus acts as an intermediary that manages the complexity of event collection and correlation between multiple applications and the monitoring module. It provides standardized interfaces for event publishing and subscription, handles event routing, and ensures reliable event delivery. This intermediary abstraction shields the monitoring module from the complexity of directly integrating with multiple applications, enabling end-to-end transaction analysis while keeping the system architecture manageable and maintainable.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS7689688B2Multiple-application transaction monitoring facility for debugging and performance tuning
Publication Date: 2010.03.30 X CORP
  • US7689688B2 patent drawing
  • US7689688B2 patent drawing
  • US7689688B2 patent drawing

AI summary

A system, method, and program product is disclosed to monitor multiple applications, each application configured to process part of a TCP/IP-based transaction. The applications communicate with one another by way of a TCP/IP protocol. Each application is further configured to generate one or more events associated with the TCP/IP-based transaction. Each application has associated therewith an event management module configured to acquire and deliver event information associated with their respective events to an event bus, to minimize overhead in managing the events. A monitoring module communicates with the event bus to receive and organize the event information to provide an integrated end-to-end view of the TCP/IP-based transaction.