IP Library Granted Patent US 10,901,813
Granted Patent B2
US 10,901,813 · App. 16/254,165 · Granted Jan 26, 2021

Clustering and monitoring system

Inventors: Ignacio Agustin Manzano (Buenos Aires, AR); Agustin Lopez Gabeiras (Buenos Aires, AR); Leandro Damián Lück (Buenos Aires, AR); Gaston Alberto Lodieu (Buenos Aires, AR); Diego Gabriel Larralde (Buenos Aires, AR); Jiang Wu (Mountain View, CA); Andrew Craig Bragdon (Brentwood, CA)
Assignee: SALESFORCE.COM, INC.
G06F9/542
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 10,901,813
App. No.
16/254,165
Granted
Jan 26, 2021
Kind
B2
Abstract

Disclosed herein are system, method, and computer program product embodiments for providing clustering and monitoring functionality. An embodiment operates by determining that an application programming interface (API) call has been made from a first application to a second application. Metric data regarding a performance of one or more computing devices responsive to the determined API call is received. The received metric data associated with the determined API call is clustered into one of a plurality of predetermined clusters associated with the performance of the one or more computing devices responsive to one or more previous API calls. A notification indicating a system state of the one or more computing devices is determined based on the clustering, and provided.

Claims (39)

1. A computer-implemented method comprising:

determining that an application programming interface (API) call has been made from a first application to a second application;

receiving metric data regarding a performance of one or more computing devices responsive to the determined API call, wherein the one or more computing devices are associated with the second application;

clustering the received metric data associated with the determined API call into one of a plurality of predetermined clusters associated with the performance of the one or more computing devices responsive to one or more previous API calls, wherein each cluster includes a set of the metric data with one or more shared attributes falling within a particular range;

determining a notification indicating a system state of the one or more computing devices, wherein the system state is based on the clustering, wherein the notification both indicates that the system state changed from a first system state to a second system state, and identifies the determined API call as corresponding to the change in the system state; and

providing the notification of the system state to the first application.

2. The method of claim 1 , wherein the system state indicates that one or more of the computing devices are not functioning within a threshold of normal operations.

3. The method of claim 2 , wherein the threshold of normal operations is based on the performance of the one or more computing devices responsive to one or more previous API calls.

4. The method of claim 1 , wherein the notification is provided to an integration platform associated with the first application that provides access to code of the first application.

5. The method of claim 1 , wherein the clustering further comprises:

redefining, by one or more processors, the predetermined clusters based received metric data regarding the performance of the one or more computing devices responsive to a plurality of subsequent API calls received after the previous API calls.

6. The method of claim 5 , wherein each predefined cluster is associated with its own notification regarding the system state.

7. The method of claim 5 , wherein the redefining comprises redefining the predetermined clusters based on an application of K means clustering to the metric data associated with both the subsequent API calls and previous API calls.

8. A system comprising:

a memory; and

at least one processor coupled to the memory and configured to:

determine that an application programming interface (API) call has been made from a first application to a second application;

receive metric data regarding a performance of one or more computing devices responsive to the determined API call, wherein the one or more computing devices are associated with the second application;

cluster the received metric data associated with the determined API call into one of a plurality of predetermined clusters associated with the performance of the one or more computing devices responsive to one or more previous API calls, wherein each cluster includes a set of the metric data with one or more shared attributes falling within a particular range;

determine a notification indicating a system state of the one or more computing devices, wherein the system state is based on the clustering, wherein the notification both indicates that the system state changed from a first system state to a second system state, and identifies the determined API call as corresponding to the change in the system state; and

provide the notification of the system state to the first application.

9. The system of claim 8 , wherein the system state indicates that one or more of the computing devices are not functioning within a threshold of normal operations.

10. The system of claim 9 , wherein the threshold of normal operations is based on the performance of the one or more computing devices responsive to one or more previous API calls.

11. The system of claim 8 , wherein the notification is provided to an integration platform associated with the first application that provides access to code of the first application.

12. The system of claim 8 , wherein the at least one processor that clusters is further configured to:

redefine the predetermined clusters based received metric data regarding the performance of the one or more computing devices responsive to a plurality of subsequent API calls received after the previous API calls.

13. The system of claim 12 , wherein each predefined cluster is associated with its own notification regarding the system state.

14. A non-transitory computer-readable device having instructions stored thereon that, when executed by at least one computing device, cause the at least one computing device to perform operations comprising:

determining that an application programming interface (API) call has been made from a first application to a second application;

receiving metric data regarding a performance of one or more computing devices responsive to the determined API call, wherein the one or more computing devices are associated with the second application;

clustering the received metric data associated with the determined API call into one of a plurality of predetermined clusters associated with the performance of the one or more computing devices responsive to one or more previous API calls, wherein each cluster includes a set of the metric data with one or more shared attributes falling within a particular range;

determining a notification indicating a system state of the one or more computing devices, wherein the system state is based on the clustering, wherein the notification both indicates that the system state changed from a first system state to a second system state, and identifies the determined API call as corresponding to the change in the system state; and

providing the notification of the system state to the first application.

15. The device of claim 14 , wherein the system state indicates that one or more of the computing devices are not functioning within a threshold of normal operations.

16. The device of claim 15 , wherein the threshold of normal operations is based on the performance of the one or more computing devices responsive to one or more previous API calls.

17. The device of claim 14 , wherein the notification is provided to an integration platform associated with the first application that provides access to code of the first application.

18. The device of claim 14 , wherein the instructions further cause the at least one processor to perform operations comprising:

redefining the predetermined clusters based received metric data regarding the performance of the one or more computing devices responsive to a plurality of subsequent API calls received after the previous API calls.

19. The device of claim 18 , wherein each predefined cluster is associated with its own notification regarding the system state.

Assignments (2)
CHANGE OF NAME Recorded Dec 18, 2024
From: SALESFORCE.COM, INC.
To: SALESFORCE, INC.
Reel/Frame 069717/0394 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 22, 2019
From: MANZANO, IGNACIO AGUSTIN; GABEIRAS, AGUSTIN LOPEZ; LÜCK, LEANDRO DAMIÁN; LODIEU, GASTON ALBERTO; LARRALDE, DIEGO GABRIEL; WU, JIANG; BRAGDON, ANDREW CRAIG
To: SALESFORCE.COM, INC.
Reel/Frame 048095/0610 →
Continuity (1)
Related Publication 20200233728A1 · Jul 23, 2020