Techniques for tracking resource usage statistics per transaction across multiple layers of protocols
First Claim
1. A computer-implemented method, comprising:
- receiving a request for data, services, or both data and services;
processing the request across a plurality of stages, beginning with a first stage;
assigning an activity context to the request at the beginning of the first stage, wherein the activity context includes an initial set of a plurality of properties that describe the request, wherein the plurality of properties includes;
an activity identifier that identifies the request;
a tenant identifier that identifies a domain name of a tenant receiving services;
a component identifier that identifies a component that handles the request; and
an action identifier that identifies an action of the request;
assigning values to the properties in the initial set during the first stage;
storing the assigned value to the properties on a data store local to the first stage;
transferring the activity context to a second stage when the request begins the second stage;
collecting the stored values;
generating a log file from the stored values;
analyzing the log file to determine a resource usage statistic; and
using the resource usage statistic to perform at least one of;
adjust a throttling algorithm;
determine a peak usage time;
determine a response time;
determine a relative resource usage of a first client-initiated action and a second client-initiated action; and
debug a resource performance problem.
2 Assignments
0 Petitions
Accused Products
Abstract
Techniques to track resource usage statistics per transaction across multiple layers of protocols and across multiple threads, processes and/or devices are disclosed. In one embodiment, for example, a technique may comprise assigning an activity context to a request at the beginning of a first stage, where the activity context has an initial set of properties. The values of the properties may be assigned to the properties in the initial set during the first stage. The value of a property may be stored on a data store local to the first stage. The activity context may be transferred to a second stage when the request begins the second stage. The transferred activity context may include a property from the initial set of properties. The stored values may be analyzed to determine a resource usage statistic. Other embodiments are described and claimed.
-
Citations
20 Claims
-
1. A computer-implemented method, comprising:
-
receiving a request for data, services, or both data and services; processing the request across a plurality of stages, beginning with a first stage; assigning an activity context to the request at the beginning of the first stage, wherein the activity context includes an initial set of a plurality of properties that describe the request, wherein the plurality of properties includes; an activity identifier that identifies the request; a tenant identifier that identifies a domain name of a tenant receiving services; a component identifier that identifies a component that handles the request; and an action identifier that identifies an action of the request; assigning values to the properties in the initial set during the first stage; storing the assigned value to the properties on a data store local to the first stage; transferring the activity context to a second stage when the request begins the second stage; collecting the stored values; generating a log file from the stored values; analyzing the log file to determine a resource usage statistic; and using the resource usage statistic to perform at least one of; adjust a throttling algorithm; determine a peak usage time; determine a response time; determine a relative resource usage of a first client-initiated action and a second client-initiated action; and debug a resource performance problem. - View Dependent Claims (2, 3, 4, 5, 15, 16, 17)
-
-
6. An article comprising a computer readable storage memory unit comprising instructions that when executed cause a system to:
-
receive one or more requests for at least one of data and services corresponding to an application; process the one or more requests across a plurality of stages, beginning with a first stage; assign an activity context to each of the one or more requests at the beginning of the first stage, wherein the activity context includes an initial set of a plurality of properties that describe the each request, wherein the plurality of properties includes; an activity identifier that uniquely identifies that request; a tenant identifier that identifies a domain name of a tenant receiving services; and an action identifier that identifies an action of the request; assign values to the properties in the first stage; store the values assigned to the properties in the first stage on a data store local to the first stage; transfer the activity context to a second stage when the each request begins the second stage; analyze the stored values of the requests to generate resource usage statistics for the application; and using the resource usage statistics to perform at least one of; adjust a throttling algorithm; determine a peak usage time; determine a response time; determine a relative resource usage of a first client-initiated action and a second client-initiated action; and debug a resource performance problem. - View Dependent Claims (7, 8, 9, 10, 18, 19)
-
-
11. An apparatus, comprising:
-
a processing unit; a memory to store a data store; a resource handler executing on the processing unit to; receive a request for data, services, or both data and services; process the request across a plurality of stages, beginning with a first stage comprising a thread or a process; assign an activity context to the request at the beginning of the first stage, wherein the activity context includes an initial set of a plurality of properties that describe the request, wherein the plurality of properties includes; an activity identifier that uniquely identifies the request; a tenant identifier that identifies a domain name of a tenant receiving services; a component identifier that identifies a component that handles the request; and an action identifier that identifies an action of the request; assign values to the properties in the initial set during the first stage; store the values assigned to the properties in the first stage a value of a property on the data store; transfer the activity context to a second stage when the request begins the second stage, the second stage comprising another thread or another process; analyze the stored values to determine a resource usage statistic; and use the resource usage statistic to perform at least one of; adjust a throttling algorithm; determine a peak usage time; determine a response time; determine a relative resource usage of a first client-initiated action and a second client-initiated action; and debug a resource performance problem. - View Dependent Claims (12, 13, 14, 20)
-
Specification