System and method for tracking service results
US-9391825-B1 · Jul 12, 2016 · US
US10728112B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-10728112-B2 |
| Application number | US-201615207286-A |
| Country | US |
| Kind code | B2 |
| Filing date | Jul 11, 2016 |
| Priority date | Mar 24, 2009 |
| Publication date | Jul 28, 2020 |
| Grant date | Jul 28, 2020 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
Various embodiments of a system and method for tracking service requests are described. Embodiments may include call tree generation logic configured to receive multiple request identifiers associated with a respective one of multiple service requests. Each given request identifier may include an origin identifier, a depth value, and a request stack comprising one or more interaction identifiers. The call tree generation logic may also be configured to, based on multiple request identifiers that each include an origin identifier associated with a particular root request, generating a data structure that specifies a hierarchy of services called to fulfill that particular root request. Based on one or more of the interaction identifiers and one or more of the depth values, the generated data structure may specify for each given service of the hierarchy: a parent service that called the given service, and one or more child services called by the given service.
Opening claim text (preview).
What is claimed is: 1. A computer-implemented method comprising: performing, by one or more computers comprising one or more processors and memory: receiving log data generated by a plurality of hosts in a service-oriented system that implements a plurality of services of different types on respective ones the plurality of hosts, and the service-oriented system is configured to, responsive to an initial request received at an initial one of the plurality of services, cause one or more service requests to be made to one or more other ones of the plurality of services to fulfill the initial request and generate log data for the one or more service requests, and the log data including records of a plurality of service requests made to or by different ones of the plurality of services and reported by the respective hosts, individual ones of the records indicating request identifiers for respective ones of the plurality of service requests; accessing the log data to determine, for a particular root request, multiple ones of the records in the log data for service requests made to fulfill that particular root request, wherein each of the multiple records includes a request identifier for a service request, an origin identifier associated with the particular root request, a request stack indicating a sequence of prior requests that caused the service request in a parent-child order, and a depth value of the service request in the request stack, wherein each child request in the request stack was issued by a child service as a result of a prior parent request in the request stack issued by a parent service; and based on the multiple records of service requests that each include the origin identifier associated with the particular root request, generating a data structure that specifies a call tree hierarchy of different ones of the plurality of services called to fulfill that particular root request, wherein the call tree hierarchy indicates, for a particular service in the call tree hierarchy, a parent service that called the particular service and one or more child services called by the particular service, and wherein the call tree hierarchy reflects the parent-child order indicated by the request stacks in the records in the log data. 2. The method of claim 1 , wherein said generating of the data structure comprises: indicating each associated service request of the multiple records as a node of said call tree hierarchy within said data structure; for each node within said call tree hierarchy, assigning the node to a level within the call tree hierarchy based on the depth value of the record associated with the service request corresponding to that node; in response to determining that a given request stack of a given node at a given level within said call tree hierarchy includes an interaction identifier that is the same as an interaction identifier of another request stack of another node located within an adjacent level of the call tree hierarchy, indicating a service call as an edge between said given node and said other node. 3. The method of claim 1 , wherein the said generating of the data structure comprises, determining that a first service issued a particular service request to a second service, wherein that determination is based on another request stack of another request identifier associated with another service request issued by the second service and not based on a request identifier associated with the particular service request. 4. The method of claim 1 , wherein a size of the request stack of at least some of the request identifiers is constrained to a particular quantity of interaction identifiers. 5. The method of claim 4 , further comprising determining said particular quantity of interaction identifiers based on one or more of: bandwidth requirements, storage requirements, and fault tolerance requirements. 6. The method of claim 1 , wherein the generating of the data structure comprises, for a given request in the multiple records, determining one or more timestamps indicating one or more of: a time at which the given request was received by the associated service of said plurality of services and a time at which the given request was sent by a service that issued the given request. 7. The method of claim 6 , wherein the generating of the data structure comprises, for each of a plurality services of said call tree hierarchy, indicating latency information associated with transmission of one or more service requests of said call tree hierarchy within the data structure, wherein said latency information is based on one or more of said timestamps. 8. The method of claim 6 , further comprising appending one or more of said timestamps as metadata to one or more services of the call tree hierarchy within the data structure. 9. The method of claim 1 , further comprising determining error information indicating one or more errors associated with processing a given request and appending said error information to the call tree hierarchy as metadata within the data structure. 10. The method of claim 1 , further comprising determining task information indicating one or more completed tasks associated with processing a given request and appending said task information to the call tree hierarchy as metadata within the data structure. 11. A system, comprising: a memory comprising program instructions; and one or more processors coupled to said memory, wherein the program instructions are executable by at least one of said one or more processors to: receive log data generated by a plurality of hosts in a service-oriented system, wherein: the service-oriented system implements a plurality of services of different types on respective ones of the plurality of hosts, and the service-oriented system is configured to, responsive to an initial request received at an initial one of the plurality of services, cause one or more service requests to be made to one or more other ones of the plurality of services to fulfill the initial request and generate log data for the one or more service requests, and the log data includes records of a plurality of service requests made to or by individual ones of the plurality of services and reported by the respective hosts, individual ones of the records indicating request identifiers for respective ones of the plurality of service requests; access the log data to determine multiple ones of the request identifiers in the log data for a particular root request, wherein each of the multiple request identifiers is associated with a service request, an origin identifier associated with a particular root request, a request stack indicating a sequence of prior requests that caused the service request in a parent-child order, and a depth value of the associated service request in the request stack, wherein each child request in the request stack was issued by a child service as a result of a prior parent request in the request stack issued by a parent service; and based on the multiple request identifiers, generate a data structure that specifies a call tree hierarchy of different ones of the plurality of services called to fulfill that particular root request, wherein the call tree hierarchy indicates, for a particular service in the call tree hierarchy, a parent service that called the particular service and one or more child services called by the particular service, and wherein the call tree hierarchy reflects the parent-child order indicated by the request stacks in the log data. 12. The system of claim 11 , wherein to generate the data structure, the program instructions are configured to: indicate each associated service request of the multiple
Timers or timing mechanisms used in protocols · CPC title
Network arrangements, protocols or services for supporting real-time applications in data packet communication (real-time or near real-time messaging, e.g. instant messaging [IM] H04L51/04; selective video distribution H04N21/00) · CPC title
Adding application-functional data or data for application control, e.g. adding metadata · CPC title
Establishing a time schedule for servicing the requests · CPC title
using time related information in packets, e.g. by adding timestamps · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.