Techniques for dynamically enriching and propagating a correlation context

US10042879B1 · US · B1

Patent metadata
FieldValue
Publication numberUS-10042879-B1
Application numberUS-201715833952-A
CountryUS
Kind codeB1
Filing dateDec 6, 2017
Priority dateNov 13, 2017
Publication dateAug 7, 2018
Grant dateAug 7, 2018

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.

Techniques a provided for performing multi-system operations in which changes are asynchronously committed in multiple systems. Metadata about the multi-system operation is injected into the commit logs of one system involved in a multi-system operation. An event stream is generated based on the commit logs of the one system, and is used to drive the operations that one or more other systems need to perform as part of the multi-system operation. A reconciliation system reads the logs of all systems involved in the multi-system operation and determines whether the multi-system operation completed successfully. Techniques are also provided for using machine learning to generate models of normal execution of different types of operations, detect anomalies, pre-emptively send expectation messages, and automatically suggest and/or apply fixes.

First claim

Opening claim text (preview).

What is claimed is: 1. A method for tracking progress of multi-system operations, comprising: receiving a request, at a first service application associated with a first service, to initiate a particular operation instance of a particular type of multi-system operation; wherein the particular type of multi-system operation requires work to be performed by the first service and by one or more second services; the first service generating a correlation context for the particular operation instance; wherein the correlation context includes at least a correlation identifier that uniquely identifies the particular operation instance; as the first service application performs a first portion of the particular operation instance, the first service application dynamically updating the correlation context with additional metadata about the particular operation instance; causing the first service application to generate a first set of log records that include the correlation context; providing the correlation context created by the first service application to the one or more second services; wherein each second service, of the one or more second services, is associated with a respective service application that performs a respective portion of the particular operation instance; wherein the respective service application of each second service: dynamically updates the correlation context with additional metadata about the particular operation instance to reflect the respective portion of the particular operation instance that is performed by the respective service application; and generates a respective set of log records that include the correlation context; wherein, after the dynamic updates made by the respective service application of each second service, the correlation context continues to include the correlation identifier but reflects different metadata about progress of execution of the particular operation instances; based on the correlation identifier, identifying a plurality of log records associated with the particular operation instance; wherein the plurality of log records includes (a) one or more log records from the first set of log records and (b) one or more log records from each respective set of log records generated by each respective second service of the one or more second services; and based on the additional metadata associated with the plurality of log records, determining actions, performed as part of the particular operation instance of the particular type of multi-system operation, by (a) the first service application and (b) the respective service application of each second service. 2. The method of claim 1 wherein the additional metadata includes a sequence number that is incremented each time a service involved in the particular operation instance calls another service to perform a portion of the particular operation instance. 3. The method of claim 2 further comprising generating a call graph for the particular operation instance based, at least in part, on sequence numbers in the log records, of the first service application and the respective service applications of the one or more second services, that contain the correlation context of the particular operation instance. 4. The method of claim 3 further comprising comparing the call graph for the particular operation instance to expected call graph features for the particular type of multi-system operation to determine whether the particular operation instance exhibited anomalous behavior. 5. The method of claim 4 further comprising generating the expected call graph features by training a machine learning engine with a training set that includes call graphs of a plurality of previously-executed instances of the particular type of multi-system operation. 6. The method of claim 1 wherein the additional metadata includes data identifying the first service application as the application that was originally requested to initiate the particular operation instance. 7. The method of claim 1 wherein: a particular call was made during execution of the particular operation instance; and the additional metadata includes data identifying a particular entity as maker of the particular call. 8. The method of claim 1 wherein: a particular call was made during execution of the particular operation instance; and the additional metadata includes data identifying a particular entity as recipient of the particular call. 9. The method of claim 1 wherein the additional metadata includes data identifying the particular type of multi-system operation. 10. The method of claim 1 wherein the additional metadata includes data identifying a particular instance of a highest-level object, at the first service, that is involved in the particular operation instance. 11. The method of claim 1 wherein providing the correlation context created by the first service application to the one or more second services includes passing the correlation context in a call from the first service application to a particular second service of the one or more second services. 12. The method of claim 11 wherein, in response to the call, the particular second service updates the correlation context to include: information that identifies a first entity that made the call; information that identifies a second entity that received the call; and an incremented sequence number. 13. The method of claim 1 wherein providing the correlation context created by the first service application to the one or more second services includes a particular second service, of the one or more second services, obtaining the correlation context from a file that was generated by the first service and imported by the particular second service. 14. The method of claim 1 wherein: during execution of the particular operation instance, a particular call is made from a particular entity, to a particular second service, on behalf of a particular user that is authorized to use the particular second service; and the particular second service adds, to the correlation context, data that identifies the particular user authorized to use the particular second service on whose behalf the particular call was made. 15. One or more non-transitory computer-readable media storing instructions for tracking progress of multi-system operations, wherein the instructions include instructions which, when executed by one or more computing devices, cause: receiving a request, at a first service application associated with a first service, to initiate a particular operation instance of a particular type of multi-system operation; wherein the particular type of multi-system operation requires work to be performed by the first service and by one or more second services; the first service generating a correlation context for the particular operation instance; wherein the correlation context includes at least a correlation identifier that uniquely identifies the particular operation instance; as the first service application performs a first portion of the particular operation instance, the first service application dynamically updating the correlation context with additional metadata about the particular operation instance; causing the first service application to generate a first set of log records that include the correlation context; providing the correlation context created by the first service application to the one or more second services; wherein each second service, of the one or more second services, is associated with a respective service application that performs a respective portion of t

Assignees

Inventors

Classifications

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 US10042879B1 cover?
Techniques a provided for performing multi-system operations in which changes are asynchronously committed in multiple systems. Metadata about the multi-system operation is injected into the commit logs of one system involved in a multi-system operation. An event stream is generated based on the commit logs of the one system, and is used to drive the operations that one or more other systems ne…
Who is the assignee on this patent?
Lendingclub Corp
What technology area does this patent fall under?
Primary CPC classification G06F17/30371. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Aug 07 2018 00:00:00 GMT+0000 (Coordinated Universal Time) (B1). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 9 related publications on this page (citations in our corpus or others sharing the same primary CPC).