IP Library Granted Patent US 9,819,729
Granted Patent B2
US 9,819,729 · App. 13/900,441 · Granted Nov 14, 2017

Application monitoring for cloud-based architectures

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,819,729
App. No.
13/900,441
Granted
Nov 14, 2017
Kind
B2
Abstract

An example system may include one or more collectors, an analyzer, and a presentation module. The one or more collectors receive a plurality of data streams that include operational data for a plurality of application nodes. The plurality of data streams are captured and provided by a plurality of meters deployed on at least one cloud computing platform to respectively meter the plurality application nodes. The analyzer processes the plurality of data streams to generate real-time performance data for an application associated with the plurality of application nodes. The presentation module streams the real-time performance data to at least one stakeholder of the application for display via a dashboard. The real-time performance data includes one or more performance metrics describing the performance of plurality of the application nodes of the application.

Claims (57)

1. A computer-implemented method comprising:

receiving, at a monitoring station, a plurality of data streams that include real-time operational data of a plurality of application instances of an application hosted on a cloud network, each application instance being hosted on a corresponding node from a plurality of nodes in the cloud network, the operational data including operational data sent and received by each of the nodes hosting the application instances in the cloud network, wherein each of the nodes hosting the application instances includes a server instance in the cloud network;

deploying a meter on the server instance;

capturing, via the meter, the data streams that include the operational data of the application instances;

processing the plurality of data streams corresponding to the plurality of application instances to generate real-time performance data for the application hosted on the cloud network, the real-time performance data including one or more performance metrics describing the performance of the application instances hosted in the cloud network; and

streaming the real-time performance data to a display station.

2. The computer-implemented method of claim 1 , further comprising: grouping the plurality of data streams corresponding to the plurality of application instances as being associated with the application.

3. The computer-implemented method of claim 1 , wherein the processing of the plurality of data streams to generate the real-time performance data includes generating a dynamic application topology, using network traffic data included in the data streams, wherein the dynamic application topology automatically maps resources being used by the application and identifies changes to the application topology as the changes occur.

4. The computer-implemented method of claim 1 , further comprising:

analyzing the plurality of data streams across a plurality of entities;

generating insights across the plurality of entities based on the analyzing; and

including the insights across the plurality of entities in the real-time performance data of the application.

5. The computer-implemented method of claim 4 , wherein the entities include one or more cloud computing platforms and one or more customers, and wherein the insights across the plurality of entities include comparative insights that compare a performance of one or more aspects of the cloud computing platforms and customers, the aspects including one or more of an application, an infrastructure, a network, an Internet Protocol (IP) service, an operating system, a platform stack, an architecture, and a geographical region.

6. The computer-implemented method of claim 1 , further comprising:

determining an event to monitor for the application;

setting a threshold for the event;

monitoring the plurality of data streams for one or more instances of the event;

determining the threshold to be satisfied by the one or more instances of the event; and

indicating that the event has occurred.

7. The computer-implemented method of claim 6 , wherein the determining the event and the setting the threshold include automatically monitoring the data streams over time to determine an application trend and setting the threshold based on the application trend.

8. A computer program product comprising a non-transitory computer usable medium including a computer-readable program, wherein the computer-readable program when executed on a computer causes the computer to:

receive, at a monitoring station, a plurality of data streams that include real-time operational data of a corresponding plurality of application instances of an application hosted on a cloud network, each application instance being hosted on a corresponding node from a plurality of nodes in the cloud network, the operational data including operational data sent and received by each of the nodes hosting the application instances in the cloud network, wherein each of the nodes hosting the application instances includes a server instance in the cloud network;

deploying a meter on the server instance;

capturing, via the meter, the data streams that include the operational data of the application instances;

process the plurality of data streams corresponding to the plurality of application instances to generate real-time performance data for the application hosted on the cloud network, the real-time performance data including one or more performance metrics describing the performance of the application instances hosted in the cloud network; and

stream the real-time performance data to a display station.

9. The computer program product of claim 8 , wherein the computer-readable program, when executed on the computer, further causes the computer to:

group the plurality of data streams corresponding to the plurality of application instances as being associated with the application.

10. The computer program product of claim 8 , wherein to process the plurality of data streams to generate the real-time performance data the computer generates a dynamic application topology, using network traffic data included in the data streams, wherein the dynamic application topology automatically maps resources being used by the application and identifies changes to the application topology as the changes occur.

11. The computer program product of claim 8 , wherein the computer-readable program, when executed on the computer, further causes the computer to:

analyze the plurality of data streams across a plurality of entities; and

generate insights across the plurality of entities based on the analyzing, wherein the real-time performance data includes the insights across the plurality of entities.

12. The computer program product of claim 11 , wherein the entities include one or more cloud computing platforms and one or more customers, and wherein the insights across the plurality of entities include comparative insights that compare a performance of one or more aspects of the cloud computing platforms and customers, the aspects including one or more of an application, an infrastructure, a network, an Internet Protocol (IP) service, an operating system, a platform stack, an architecture, and a geographical region.

13. The computer program product of claim 8 , wherein the computer-readable program, when executed on the computer, further causes the computer to:

determine an event to monitor for the application;

set a threshold for the event;

monitor the plurality of data streams for one or more instances of the event;

determine the threshold to be satisfied by the one or more instances of the event; and

indicate that the event has occurred.

14. The computer program product of claim 13 , wherein to determine the event and to set the threshold include automatically monitoring the data streams over time to determine an application trend and setting the threshold based on the application trend.

15. A system comprising:

one or more processors;

one or more collectors executable by the one or more processors to receive a plurality of data streams that include real-time operational data of a plurality of application instances of an application hosted on a cloud network, each application instance being hosted on a corresponding node in the cloud network, the operational data including operational data sent and received by each of the nodes hosting the application instances in the cloud network, wherein each of the nodes hosting the application instances includes a server instance in the cloud network;

deploying a meter on the server instance;

capturing, via the meter, the data streams that include the operational data of the application instances;

an analyzer executable by the one or more processors to process the plurality of data streams corresponding to the plurality of application instances to generate real-time performance data for the application hosted on the cloud network, the real-time performance data including one or more performance metrics describing the performance of the application instances hosted in the cloud network; and

a presentation module executable by the one or more processors to stream the real-time performance data to a display station.

16. The system of claim 15 , further comprising:

a messaging unit executable by the one or more processors to group the plurality of data streams corresponding to the plurality of application instances as being associated with the application, the messaging unit being coupled to the one or more collectors to receive the data streams and further being coupled to the analyzer to provide the data streams to the analyzer and to receive the real-time performance data from the analyzer.

17. The system of claim 15 , wherein the analyzer is configured to process the plurality of data streams to generate the real-time performance data by generating a dynamic application topology, using network traffic data included in the data streams, wherein the dynamic application topology automatically maps resources being used by the application and identifies changes to the application topology as they occur.

18. The system of claim 15 , wherein the analyzer is configured to analyze the plurality of data streams across a plurality of entities and generate insights across the plurality of entities based on the analyzing of the plurality of data streams, wherein the real-time performance data includes the insights across the plurality of entities.

19. The system of claim 18 , wherein the entities include one or more cloud computing platforms and one or more customers, and wherein the insights across the plurality of entities include comparative insights that compare a performance of one or more aspects of the one or more cloud computing platforms and one or more customers, the aspects including one or more of an application, an infrastructure, a network, an Internet Protocol (IP) service, an operating system, a platform stack, an architecture, and a geographical region.

20. The system of claim 15 , wherein:

the analyzer is configured to determine an event to monitor for the application and set a threshold for the event;

the analyzer is further configured to monitor the plurality of data streams for one or more instances of the event and determine the threshold to be satisfied by the one or more instances of the event; and

the presentation module is configured to indicate that the event has occurred.

21. The system of claim 20 , wherein the analyzer is further configured to determine the event, automatically monitor the data streams over time to determine an application trend, and set the threshold based on the application trend.

Assignments (15)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 7, 2025
From: BMC SOFTWARE, INC.
To: BMC HELIX, INC.
Reel/Frame 070442/0197 →
GRANT OF FIRST LIEN SECURITY INTEREST IN PATENT RIGHTS Recorded Nov 13, 2024
From: BMC SOFTWARE, INC.; BLADELOGIC, INC.
To: GOLDMAN SACHS BANK USA, AS COLLATERAL AGENT
Reel/Frame 069352/0628 →
GRANT OF SECOND LIEN SECURITY INTEREST IN PATENT RIGHTS Recorded Nov 13, 2024
From: BMC SOFTWARE, INC.; BLADELOGIC, INC.
To: GOLDMAN SACHS BANK USA, AS COLLATERAL AGENT
Reel/Frame 069352/0568 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (052854/0139) Recorded Aug 6, 2024
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
To: BMC SOFTWARE, INC.; BLADELOGIC, INC.
Reel/Frame 068339/0617 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (052844/0646) Recorded Aug 6, 2024
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
To: BMC SOFTWARE, INC.; BLADELOGIC, INC.
Reel/Frame 068339/0408 →
OMNIBUS ASSIGNMENT OF SECURITY INTERESTS IN PATENT COLLATERAL Recorded Mar 4, 2024
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS RESIGNING COLLATERAL AGENT
To: GOLDMAN SACHS BANK USA, AS SUCCESSOR COLLATERAL AGENT
Reel/Frame 066729/0889 →
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS Recorded Feb 1, 2024
From: ALTER DOMUS (US) LLC
To: BMC SOFTWARE, INC.; BLADELOGIC, INC.
Reel/Frame 066567/0283 →
GRANT OF SECOND LIEN SECURITY INTEREST IN PATENT RIGHTS Recorded Sep 30, 2021
From: BMC SOFTWARE, INC.; BLADELOGIC, INC.
To: ALTER DOMUS (US) LLC
Reel/Frame 057683/0582 →
SECURITY INTEREST Recorded Jun 4, 2020
From: BMC SOFTWARE, INC.; BLADELOGIC, INC.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 052844/0646 →
SECURITY INTEREST Recorded Jun 4, 2020
From: BMC SOFTWARE, INC.; BLADELOGIC, INC.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 052854/0139 →
RELEASE OF PATENTS Recorded Oct 5, 2018
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: BMC SOFTWARE, INC.; BLADELOGIC, INC.; BMC ACQUISITION L.L.C.
Reel/Frame 047198/0468 →
SECURITY INTEREST Recorded Oct 2, 2018
From: BMC SOFTWARE, INC.; BLADELOGIC, INC.
To: CREDIT SUISSE, AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 047185/0744 →
SECURITY INTEREST Recorded Aug 10, 2017
From: BMC SOFTWARE, INC.; BLADELOGIC, INC.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 043514/0845 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 26, 2015
From: BOUNDARY, INC.
To: BMC SOFTWARE, INC.
Reel/Frame 036430/0003 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 26, 2013
From: MOON, CLIFF; BLACK, BENJAMIN
To: BOUNDARY, INC.
Reel/Frame 030887/0073 →