IP Library Granted Patent US 11,803,439
Granted Patent B2
US 11,803,439 · App. 18/104,241 · Granted Oct 31, 2023

Enriched high fidelity metrics

Inventors: Amit Shriram Kalamkar (Fremont, CA); Edward K. Lee (Mountain View, CA); Vigith Maurice (Mountain View, CA)
Assignee: Intuit Inc.
G06F11/0781G06F11/0709G06F11/0751G06F11/0757G06F11/0775G06F11/0793
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 11,803,439
App. No.
18/104,241
Granted
Oct 31, 2023
Kind
B2
Abstract

A method including receiving events from different data sources for a service automatically executing in an enterprise system. A first event is enriched by providing the first event with first metadata that associates the first event with a first application used by the service. The first event is assigned to a time slice associated with the first application. A second event is enriched in a similar manner. A correlation graph of nodes and edges is built using the enriched events, with nodes representing the events and edges indicating relationships between the edges. A third event indicating a fault in the first application associated with the first node is received. The source of the error for the third event is identified using the second updated correlation graph and the time slice. The source of error is then mitigated.

Claims (52)

1. A method comprising:

receiving a plurality of events from a plurality of different data sources for a service automatically executing in an enterprise system;

enriching at least a first event in the plurality of events by providing the first event with first metadata that associates the first event with a first application used by the service, wherein enriching the first event generates a first enriched event;

assigning the first event to a time slice of a plurality of time slices associated with the first application;

creating, based on the first enriched event, a first node of a correlation graph that represents the first application, wherein the correlation graph comprises one node and zero edges;

enriching a second event in the plurality of events by providing the second event with second metadata that associates the second event with a second application, wherein enriching the second event generates a second enriched event;

assigning the second enriched event to the time slice;

creating, based on the second enriched event, a second node of a first updated correlation graph that represents the second application, wherein the first updated correlation graph comprises two nodes and zero edges;

correlating the second node with the first node,

wherein the second node is dependent on the first node to generate a second updated correlation graph that represents the first application and the second application, and

wherein the second updated correlation graph comprises two nodes and one edge;

receiving a third event indicating a fault in the first application associated with the first node;

identifying, using the second updated correlation graph and the time slice, a source of error for the third event;

mitigating the source of error; and

generating a display API configured to display the plurality of time slices.

2. The method of claim 1 , wherein the display API is further configured to:

receive user input selecting one of the plurality of time slices displayed as a selected time slice; and

responsive to selecting, display a first heat map that is associated with the selected time slice.

3. The method of claim 2 , wherein the display API is further configured to:

display the plurality of time slices adjacent to each other,

display a line longitudinally through the plurality of time slices,

display metrics related to the plurality of software programs above the line, and

display metrics related to the enterprise system below the line.

4. A method comprising:

receiving a plurality of events from a plurality of different data sources for a service automatically executing in an enterprise system;

enriching at least a first event in the plurality of events by providing the first event with first metadata that associates the first event with a first application used by the service, wherein enriching the first event generates a first enriched event;

assigning the first event to a time slice of a plurality of time slices associated with the first application;

creating, based on the first enriched event, a first node of a correlation graph that represents the first application, wherein the correlation graph comprises one node and zero edges;

enriching a second event in the plurality of events by providing the second event with second metadata that associates the second event with a second application, wherein enriching the second event generates a second enriched event;

assigning the second enriched event to the time slice;

creating, based on the second enriched event, a second node of a first updated correlation graph that represents the second application, wherein the first updated correlation graph comprises two nodes and zero edges;

correlating the second node with the first node,

wherein the second node is dependent on the first node to generate a second updated correlation graph that represents the first application and the second application, and

wherein the second updated correlation graph comprises two nodes and one edge;

receiving a third event indicating a fault in the first application associated with the first node;

identifying, using the second updated correlation graph and the time slice, a source of error for the third event;

mitigating the source of error; and

ingesting a plurality of metrics by an ingestion layer with a domain separation engine configured to separate the plurality of metrics into a first domain and a second domain,

wherein the first domain comprises a first retention policy determining how long metrics in the first domain will be stored, and

wherein the second domain comprises metrics related to the fault and a second retention policy determining how long metrics in the second domain will be stored,

wherein the first retention policy is less than the second retention policy, and

wherein the second domain further stores more data than the first domain.

5. The method of claim 4 , further comprising:

hashing the second domain to generate hashed data, and cache the hashed data.

6. The method of claim 4 , further comprising:

hashing data in the plurality of time slices to generate hashed data; and

caching the hashed data.

7. The method of claim 6 , further comprising:

receiving a user input selecting one of the plurality of time slices; and

responsive to receiving, retrieving the hashed data;

reconstituting the hashed data to regenerate the data; and

displaying the data on the display device.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 14, 2023
From: KALAMKAR, AMIT SHRIRAM; LEE, EDWARD K.; MAURICE, VIGITH
To: INTUIT INC.
Reel/Frame 062696/0882 →
Continuity (3)
Continuation 17508821 · Oct 22, 2021
Division 16860224 · Apr 28, 2020
Related Publication 20230195554A1 · Jun 22, 2023