Pattern matching framework for log analysis

US9400733B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9400733-B2
Application numberUS-95809910-A
CountryUS
Kind codeB2
Filing dateDec 1, 2010
Priority dateDec 1, 2010
Publication dateJul 26, 2016
Grant dateJul 26, 2016

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

A pattern matching framework for log analysis is described. In one or more implementations, one or more inputs are received via a user interface of a computing device that describe a filter pattern that specifies data that is to be matched and extracted from a log and a projection pattern that specifies how at least a portion of the data extracted using the filter pattern is to be output. A query is formed from the filter pattern and the projection pattern by the computing device that is configured to analyze the log.

First claim

Opening claim text (preview).

What is claimed is: 1. A method comprising: outputting, by a computing device, a user interface configured to display data elements that are user-selectable to arrange and represent data patterns that include a filter pattern defining a search for data and a projection pattern defining a data output for the data that is matched by the filter pattern; receiving one or more inputs via the user interface of the computing device to define and arrange the data elements describing the filter pattern that specifies the data to be matched and extracted from a log, and the data elements describing the projection pattern that specifies a format of the data output for at least a portion of the data extracted from the log using the filter pattern, the specification by the projection pattern including global variables, bound variables from the filter pattern, aggregation functions, and type cast operations; and forming, by the computing device, a query from the filter pattern and the projection pattern to analyze the log. 2. A method as described in claim 1 , wherein: the data elements are configured to specify particular data for respective said data elements that is to be matched from the log; and the arrangement of the data elements, one to another, is configured to specify an arrangement of the data in the log that is to be considered as a match of the filter pattern. 3. A method as described in claim 1 , wherein: the data elements are configured to specify particular data for respective said data elements that is to be output from the data extracted from the log by the filter pattern; and the arrangement of the data elements, one to another, is configured to specify an arrangement of the data extracted from the log that is to be considered as a match of the projection pattern. 4. A method as described in claim 1 , wherein the user interface is configured to specify that values are to be bound to corresponding variables that are represented by respective said data elements. 5. A method as described in claim 1 , wherein the specification by the projection pattern includes injecting one or more labels to the portion of the data extracted. 6. A method as described in claim 1 , wherein the user interface is configured to specify a number of occurrences of a match in the log of at least a portion of a respective said filter pattern or projection pattern for finding a match for the respective said filter pattern or projection pattern. 7. A method as described in claim 1 , wherein the user interface is configured to specify separation of a number of lines in the log of respective portions of a respective said filter pattern or projection pattern for finding a match for the respective said filter pattern or projection pattern. 8. A method as described in claim 1 , wherein the user interface is configured to define portions of a respective said filter pattern or projection pattern as separated by an undefined number of lines in the log for finding a match for the respective said filter pattern or projection pattern. 9. A method as described in claim 1 , wherein the global variables include a data file filename, a first timestamp indicating a start of query processing, a second timestamp indicating an end of the query processing, and a current date. 10. A computing device, comprising: a display device configured to display a user interface that displays data elements, which are user-selectable to arrange in the user interface and represent data patterns that include a filter pattern defining a search for data and a projection pattern defining a data output for the data that is matched by the filter pattern; a memory and processor system to implement a query builder module that is configured to: receive one or more inputs via the user interface to define and arrange the data elements describing the filter pattern that specifies the data to be matched and extracted from a log, and the data elements describing the projection pattern that specifies a format of the data output for at least a portion of the data extracted from the log using the filter pattern, the specification by the projection pattern including global variables, bound variables from the filter pattern, aggregation functions, and type cast operations; and form a query from the filter pattern and the projection pattern, as defined by the arrangement of the data elements, one to another, to analyze the log. 11. A computing device as described in claim 10 , wherein the filter pattern is represented as a two-dimensional pattern by the arrangement of the data elements, and the filter pattern specifies the data that is to be matched and extracted from the log. 12. A computing device as described in claim 11 , wherein the projection pattern that specifies whether one or more labels are injected into at least a portion of the data extracted using the filter pattern is to be output. 13. A computing device as described in claim 10 , wherein the user interface is configured to specify that values are to be bound to corresponding variables that are represented by respective said arrangement of the data elements to represent the data patterns. 14. A computing device as described in claim 10 , wherein the user interface is configured to specify a number of occurrences of a match in the log of at least a portion of the filter pattern for finding a match for the filter pattern. 15. A computing device as described in claim 10 , wherein the user interface is configured to specify separation of a number of lines in the log of portions of the filter pattern for finding a match for the filter pattern. 16. A computing device as described in claim 10 , wherein the user interface is configured to define portions of the filter pattern as separated by an undefined number of lines in the log for finding a match for the filter pattern. 17. A method comprising: receiving a query at a computing device, the query including a filter pattern and a projection pattern, the filter pattern defining a search for data and the projection pattern defining a data output for the data that is matched by the filter pattern, each of the filter pattern and the projection pattern defined by data patterns represented by data elements that are user-selectable and arranged in a user interface; analyzing a log by the computing device using the query, the analyzing including: extracting the data from the log that matches the filter pattern; and outputting the extracted data that matches the projection pattern, which specifies a format of the data output for at least a portion of the data that is to be output to a data file based in part on the arrangement of the data elements, the specification by the projection pattern including global variables, bound variables from the filter pattern, aggregation functions, and type cast operations. 18. A method as described in claim 17 , wherein the filter pattern or the projection pattern is configured to specify a number of occurrences of a match in the log of at least a portion of a respective said filter pattern or projection pattern for finding a match for the respective said filter pattern or projection pattern. 19. A method as described in claim 17 , wherein the filter pattern or the projection pattern is configured to specify separation of a number of lines in the log of respective portions of a respective said filter pattern or projection pattern for finding a match for the respective said filter pattern or projection pattern. 20. A method as described in claim 17 , wherein

Assignees

Inventors

Classifications

  • Query predicate definition using graphical user interfaces, including menus and forms (G06F16/2423 takes precedence) · CPC title

  • Data logging (G06F11/14, G06F11/2205 take precedence) · CPC title

  • Event-based monitoring · CPC title

  • Physics · mapped topic

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US9400733B2 cover?
A pattern matching framework for log analysis is described. In one or more implementations, one or more inputs are received via a user interface of a computing device that describe a filter pattern that specifies data that is to be matched and extracted from a log and a projection pattern that specifies how at least a portion of the data extracted using the filter pattern is to be output. A que…
Who is the assignee on this patent?
Abraham Robin, Microsoft Technology Licensing Llc
What technology area does this patent fall under?
Primary CPC classification G06F11/3476. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Jul 26 2016 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).