IP Library Granted Patent US 11,829,189
Granted Patent B2
US 11,829,189 · App. 17/695,098 · Granted Nov 28, 2023

Clustering of structured log data by key schema

Inventors: Udit Saxena (Mountain View, CA); Reetika Roy (Redwood City, CA); Ryley Higa (Redwood City, CA); David M. Andrzejewski (San Francisco, CA); Bashyam T C A (Redwood City, CA)
Assignee: Sumo Logic, Inc.
G06F11/0784G06F11/0775G06F11/0781G06F11/0787G06F16/211G06F16/24G06F16/24553G06F16/258G06F16/358
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,829,189
App. No.
17/695,098
Granted
Nov 28, 2023
Kind
B2
Abstract

Clustering structured log data by key schema includes receiving a raw log message. At least a portion of the raw log message comprises structured machine data including a set of key-value pairs. It further includes receiving a map of keys to values. It further includes using the received map of keys to values to determine a key schema of the structured machine data. The key schema is associated with a corresponding cluster. It further includes associating the raw log message with the cluster corresponding to the determined key schema.

Claims (49)

1. A computer-implemented method comprising:

receiving a request to analyze a plurality of logs containing tabular data having values for a plurality of fields, the request comprising a test predicate indicating one or more conditions for the values of the plurality of fields;

creating a test set comprising logs from the plurality of logs that meet the one or more conditions;

creating a control set comprising logs from the plurality of logs that do not meet the one or more conditions;

determining a set of key-value pairs comprising key-value pairs that occur in the test set with a frequency exceeding a first predetermined frequency and that occur in the control set with a frequency lower than a second predetermined frequency; and

causing presentation on a user interface (UI) of an explanation parameter comprising the set of key-value pairs.

2. The method as recited in claim 1 , wherein the causing presentation of the explanation parameter comprises:

providing, in the UI, a percentage of relevance based on how often each determined key-value pair appears in the test set and in the control set.

3. The method as recited in claim 1 , wherein the causing presentation of the explanation parameter comprises:

providing, in the UI, a count of how many times the determined key-value pair appears in the test set and in the control set.

4. The method as recited in claim 1 , further comprising:

providing options in the UI to select operators for defining the test predicate.

5. The method as recited in claim 1 , wherein the tabular data comprises rows for the plurality of logs and columns for parsed values extracted from structured data in the plurality of logs.

6. The method as recited in claim 1 , wherein the causing presentation of the explanation parameter comprises:

causing presentation on the UI of a list of explanations in tabular format with one row for each unique explanation parameter associated with a unique combination of values for the key-value pairs.

7. The method as recited in claim 1 , wherein the causing presentation of the explanation parameter comprises:

providing a relevance score for the explanation parameter, the relevance score calculated based on a ratio of appearance of the key-value pair between the test set and the control set.

8. The method as recited in claim 1 , further comprising:

providing an Application Programming Interface (API) for receiving the request, the API comprising configurable parameters for defining the plurality of logs, the test predicate, and a request to calculate the explanation parameter.

9. The method as recited in claim 1 , wherein the test set comprises logs indicating an abnormal condition and the control set comprises logs indicating baseline behavior.

10. A system comprising:

a memory comprising instructions; and

one or more computer processors, wherein the instructions, when executed by the one or more computer processors, cause the system to perform operations comprising:

receiving a request to analyze a plurality of logs containing tabular data having values for a plurality of fields, the request comprising a test predicate indicating one or more conditions for the values of the plurality of fields;

creating a test set comprising logs from the plurality of logs that meet the one or more conditions;

creating a control set comprising logs from the plurality of logs that do not meet the one or more conditions;

determining a set of key-value pairs comprising key-value pairs that occur in the test set with a frequency exceeding a first predetermined frequency and that occur in the control set with a frequency lower than a second predetermined frequency; and

causing presentation on a user interface (UI) of an explanation parameter comprising the set of key-value pairs.

11. The system as recited in claim 10 , wherein the causing presentation of the explanation parameter comprises:

providing, in the UI, a percentage of relevance based on how often each determined key-value pair appears in the test set and in the control set.

12. The system as recited in claim 10 , wherein the causing presentation of the explanation parameter comprises:

providing, in the UI, a count of how many times the determined key-value pair appears in the test set and in the control set.

13. The system as recited in claim 10 , wherein the instructions further cause the one or more computer processors to perform operations comprising:

providing options in the UI to select operators for defining the test predicate.

14. The system as recited in claim 10 , wherein the tabular data comprises rows for the plurality of logs and columns for parsed values extracted from structured data in the plurality of logs.

15. The system as recited in claim 10 , wherein causing presentation of the explanation parameter comprises:

causing presentation on the UI of a list of explanations in tabular format with one row for each unique explanation parameter associated with a unique combination of values for the key-value pairs.

16. A non-transitory machine-readable storage medium including instructions that, when executed by a machine, cause the machine to perform operations comprising:

receiving a request to analyze a plurality of logs containing tabular data having values for a plurality of fields, the request comprising a test predicate indicating one or more conditions for the values of the plurality of fields;

creating a test set comprising logs from the plurality of logs that meet the one or more conditions;

creating a control set comprising logs from the plurality of logs that do not meet the one or more conditions;

determining a set of key-value pairs comprising key-value pairs that occur in the test set with a frequency exceeding a first predetermined frequency and that occur in the control set with a frequency lower than a second predetermined frequency; and

causing presentation on a user interface (UI) of an explanation parameter comprising the set of key-value pairs.

17. A non-transitory machine-readable storage medium as recited in claim 16 , wherein the causing presentation of the explanation parameter comprises:

providing, in the UI, a percentage of relevance based on how often each determined key-value pair appears in the test set and in the control set.

18. A non-transitory machine-readable storage medium as recited in claim 16 , wherein the causing presentation of the explanation parameter comprises:

providing, in the UI, a count of how many times the determined key-value pair appears in the test set and in the control set.

19. A non-transitory machine-readable storage medium as recited in claim 16 , wherein the machine further performs operations comprising: providing options in the UI to select operators for defining the test predicate.

20. A non-transitory machine-readable storage medium as recited in claim 16 , wherein the tabular data comprises rows for the plurality of logs and columns for parsed values extracted from structured data in the plurality of logs.

Assignments (2)
PATENT SECURITY AGREEMENT Recorded May 12, 2023
From: SUMO LOGIC, INC.
To: AB PRIVATE CREDIT INVESTORS LLC, AS COLLATERAL AGENT
Reel/Frame 063633/0648 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 24, 2022
From: SAXENA, UDIT; ROY, REETIKA; HIGA, RYLEY; ANDRZEJEWSKI, DAVID M.; TCA, BASHYAM
To: SUMO LOGIC, INC.
Reel/Frame 059994/0308 →
Continuity (3)
Continuation 17009643 · Sep 1, 2020
Provisional Application 63031464 · May 28, 2020
Related Publication 20220269554A1 · Aug 25, 2022