Method and system for monitoring the performance of a distributed application
First Claim
1. A method for determining one or more performance metrics for a distributed application in which distributed application data are transferred from a first site to a second site over a network, the method comprising:
- (a) receiving a request from a user for the distributed application data, the request being transmitted from the second site to the first site over the network;
(b) including machine instructions with the distributed application data that define a performance monitoring function, the machine instructions and the distributed application data being a single data file;
(c) including a monitor cookie with the distributed application data that indicates that the distributed application data are a monitored object;
(d) transmitting, in response to the request, the distributed application data from the first site to the second site over the network;
(e) detecting the monitor cookie at the second site;
(f) executing, in response to the monitor cookie being detected, the machine instructions at the second site to implement the performance monitoring function used to determine the one or more performance metrics for the distributed application without using the performance monitoring function to request any distributed application data from any site, at least one of the one or more performance metrics being determined in connection with timing of events occurring during the transmission of the distributed application data to the second site;
(g) determining a performance metric at the first site; and
(h) combining at least one of the one or more performance metrics determined at the second site with the performance metric determined at the first site to determine a correlated performance metric.
8 Assignments
0 Petitions
Accused Products
Abstract
A service monitor and a browser monitor determine performance metrics on both a server and a client in connection with a distributed application running on a network. While applicable to other types of distributed application data, an example is described in which a Web page is requested by a user running a browser program on the client computer. In response, the server transmits the requested Web page, along with JavaScript code that defines a browser monitor, to the client. A browser monitoring function controlled by this code determines a plurality of different performance metrics related to the access of Web pages by the client. In addition, the server monitor determines performance metrics specific to its function in providing the Web page to the client. A correlated performance metric is determined by combining a server performance metric with a browser performance metric.
155 Citations
47 Claims
-
1. A method for determining one or more performance metrics for a distributed application in which distributed application data are transferred from a first site to a second site over a network, the method comprising:
-
(a) receiving a request from a user for the distributed application data, the request being transmitted from the second site to the first site over the network; (b) including machine instructions with the distributed application data that define a performance monitoring function, the machine instructions and the distributed application data being a single data file; (c) including a monitor cookie with the distributed application data that indicates that the distributed application data are a monitored object; (d) transmitting, in response to the request, the distributed application data from the first site to the second site over the network; (e) detecting the monitor cookie at the second site; (f) executing, in response to the monitor cookie being detected, the machine instructions at the second site to implement the performance monitoring function used to determine the one or more performance metrics for the distributed application without using the performance monitoring function to request any distributed application data from any site, at least one of the one or more performance metrics being determined in connection with timing of events occurring during the transmission of the distributed application data to the second site; (g) determining a performance metric at the first site; and (h) combining at least one of the one or more performance metrics determined at the second site with the performance metric determined at the first site to determine a correlated performance metric. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A method for determining and collecting at least one performance metric related to access of a Web page by a browser program on a client device, including at least a correlated performance metric for a network, the method comprising:
-
(a) enabling a user to request transfer of the Web page from a server device to the client device over a network; (b) including machine instructions with the Web page that define a browser monitoring function; (c) including a monitor cookie with the Web page that indicates that the Web page is a monitored document; (d) transferring the Web page from the server device to the client device; (e) detecting the monitor cookie when the Web page is transferred to the client device; (f) when the Web page is loaded by the client device for rendering by the browser program, causing, in response to the monitor cookie being detected, the client device to execute the machine instructions that define how to carry out the browser monitoring function, the browser monitoring function being implemented without requiring any affirmative action by a user of the client device; (g) determining the at least one performance metric on the client device with the browser monitoring function without using the browser monitoring function to request any Web page from any site, the at least one performance metric being determined in connection with timing of events occurring during the transmission of the distributed application data to the client device; (h) determining a server performance metric; and (i) combining the server performance metric with the at least one performance metric to determine the correlated performance metric. - View Dependent Claims (12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22)
-
-
23. A memory medium on which are stored machine readable instructions that, when executed by a client computing device, cause the client computing device to carry out a browser monitoring function, the browser monitoring function being implemented without requiring any affirmative action by a user of the client computing device and being used to:
-
detect whether a monitor cookie is included with a Web page that is transferred to the client computing device, the monitor cookie indicating that the Web page is a monitored document; determine, in response to the monitor cookie being detected, at least one performance metric for the Web page on the client computing device, the at least one performance metric being related to access of the Web page by a browser program executed on the client computing device and being combined with another performance metric determined at a server computing device to determine a correlated performance metric, wherein the correlated performance metric is not determined using the browser monitoring function to request any Web page from any site. - View Dependent Claims (24, 25, 26, 27)
-
-
28. A system for determining and collecting at least one performance metric related to access of a Web page by a browser program, the system comprising:
-
(a) a memory; (b) a display; (c) a network interface; and (d) a processing device that is coupled to the memory, the display, and the network interface, the network interface being adapted to couple to a remote storage at a server to retrieve the Web page, the Web page including machine instructions that cause the processing device to; detect whether a monitor cookie is included with the Web page, the monitor cookie indicating that the Web page is a monitored document; perform, in response to the monitor cookie being detected, a browser monitoring function when the Web page is loaded by the processing device for rendering in the display, the browser monitoring function determining the at least one performance metric and being implemented without requiring any affirmative action by a user of the processing device and without using the browser monitoring function to request any further download from any site, the at least one performance metric being combined with another performance metric determined at the server to determine a correlated performance metric. - View Dependent Claims (29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40)
-
-
41. A method for determining and collecting at least one performance metric related to access of a Web page by a browser program on a client device, the method comprising:
-
(a) enabling a user to request transfer of the Web page from a server device to the client device over a network; (b) transferring the Web page from the server device to the client device; (c) including a monitor cookie with the Web page that indicates that the Web page is a monitored object; (d) including machine instructions with the Web page so that the Web page and the machine instructions are transferred to the client device as one data file, the machine instructions performing a browser monitoring function when executed by the client device, the browser monitoring function being implemented in response to the monitor cookie being detected, without requiring any affirmative action by a user of the client devices, and without requesting any distributed application data from any site, the browser monitoring function determining at least one performance metric on the client device; (e) determining a server performance metric; and (f) combining the server performance metric with the at least one performance metric to determine a correlated performance metric for the network. - View Dependent Claims (42, 43, 44, 45, 46, 47)
-
Specification