IP Library Granted Patent US 8,738,759
Granted Patent B2
US 8,738,759 · App. 10/947,858 · Granted May 27, 2014

System and method for service response monitoring

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,738,759
App. No.
10/947,858
Granted
May 27, 2014
Kind
B2
Abstract

A method, system, and computer program product for monitoring the response time for a web service provider is provided. In one embodiment, receiving a web service inbound transaction is received at a web service proxy server. The web service proxy server invokes a response time monitoring service and provides the response time monitoring service with a unique transaction identifier for the inbound transaction. The web service proxy server also invokes, on the web service provider, a web service requested by the inbound transaction. The proxy server later receives an outbound transaction from the web service provider corresponding to the original inbound transaction and invokes the response time monitoring service, once again, providing the unique transaction identifier to the response time monitoring service. The response time monitoring service determines a time for the inbound transaction and for the outbound transaction corresponding to the same unique transaction identifier and sets a response time as the difference in times between the time for the outbound transaction and the time for the inbound transaction.

Claims (52)

1. A method for monitoring the response time for a web service provider, the method comprising:

receiving a web service inbound transaction at a proxy;

exiting from calls for inbound transactions to invoke a response time monitoring service from the proxy in response to the inbound transaction reception and providing the response time monitoring service with a unique transaction identifier for the inbound transaction;

invoking on the web service provider a web service requested by the inbound transaction;

receiving an outbound transaction in response to the requested web service from the web service provider at the proxy;

invoking the response time monitoring service from the proxy in response to the outbound transaction reception and providing the unique transaction identifier to the response time monitoring service;

determining a time for the inbound transaction and for the outbound transaction corresponding to the same unique transaction identifier;

setting a response time as the difference in times between a time for the outbound transaction and a time for the inbound transaction.

2. The method as recited in claim 1 , further comprising: recording the response time in a log file.

3. The method as recited in claim 2 , wherein the log file comprises a plurality of response times and further comprising:

monitoring response times recorded in the log file and determining whether the response times are in accord with requirements of a service level agreement.

4. The method as recited in claim 2 , further comprising:

responsive to a determination that a percentage of response times that exceed a response time specified in a service level agreement is greater than a threshold value, alerting an administrator.

5. The method as recited in claim 1 , further comprising: adjusting charges billed to an enterprise by a web service provider based on a comparison of actual response times with a formula for determining billing charges.

6. A computer program product stored in a non-transitory computer readable media for use in a data processing system for monitoring the response time for a web service provider, the computer program product comprising:

first instructions for receiving a web service inbound transaction at a proxy;

second instructions for exiting from calls for inbound transactions to invoke a response time monitoring service from the proxy in response to the reception of the inbound transaction and providing the response time monitoring service with a unique transaction identifier for the inbound transaction;

third instructions for invoking on the web service provider a web service requested by the inbound transaction;

fourth instructions for receiving an outbound transaction in response to the requested web service at the proxy from the web service provider;

fifth instructions for invoking the response time monitoring service from the proxy in response to the reception of the outbound transaction and providing the unique transaction identifier to the response time monitoring service;

sixth instructions for determining a time for the inbound transaction and for the outbound transaction corresponding to the same unique transaction identifier;

seventh instructions for setting a response time as the difference in times between a time for the outbound transaction and a time for the inbound transaction.

7. The computer program product as recited in claim 6 , further comprising:

eighth instructions for recording the response time in a log file.

8. The computer program product as recited in claim 7 , wherein the log file comprises a plurality of response times and further comprising: ninth instructions for monitoring response times recorded in the log file and determining whether the response times are in accord with requirements of a service level agreement.

9. The computer program product as recited in claim 7 , further comprising: ninth instructions for alerting an administrator in response to a determination that a percentage of response times that exceed a response time specified in a service level agreement is greater than a threshold value.

10. The computer program product as recited in claim 6 , further comprising:

eighth instructions for adjusting charges billed to an enterprise by a web service provider based on a comparison of actual response times with a formula for determining billing charges.

11. A data processing system comprising:

a memory to store instructions for monitoring the response time for a web service provider;

a processor to execute the instructions to:

receive a web service inbound transaction at a proxy;

exit from calls for inbound transactions to invoke a response time monitoring service from the proxy in response to the inbound transaction reception and providing the response time monitoring service with a unique transaction identifier for the inbound transaction;

toinvoke on the web service provider a web service requested by the inbound transaction;

receive an outbound transaction in response to the requested web service at the proxy from the web service provider;

invoke the response time monitoring service monitoring service from the proxy in response to the outbound transaction reception and providing the unique transaction identifier to the response time monitoring service;

determine a time for the inbound transaction and for the outbound transaction corresponding to the same unique transaction identifier;

set a response time as the difference in times between a time for the outbound transaction and a time for the inbound transaction.

12. The data processing system as recited in claim 11 , the processor to execute the instructions to record the response time in a log file.

13. The data processing system as recited in claim 12 , wherein the log file comprises a plurality of response times and further comprising: ninth means for monitoring response times recorded in the log file and determining whether the response times are in accord with requirements of a service level agreement.

14. The data processing system as recited in claim 12 , the processor to execute the instructions to alert an administrator in response to a determination that a percentage of response times that exceed a response time specified in a service level agreement is greater than a threshold value.

15. The data processing system as recited in claim 11 , the processor to execute the instructions to adjust charges billed to an enterprise by a web service provider based on a comparison of actual response times with a formula for determining billing charges.

16. A web service system, comprising:

a web service proxy server coupled to a web service provider along a first logical path and coupled to a web service consumer; and

a response time monitoring web service coupled to the web service proxy server along a second logical path parallel to the first logical path;

wherein the web service proxy server receives a web service inbound transaction from the web service consumer, associates a unique transaction identifier with the inbound transaction, invokes the response time monitoring web service along the second logical path, and invokes a web service from the web service provider requested by the web service inbound transaction along the first logical path;

wherein the web service proxy server receives a web service outbound transaction in response to the web service inbound transaction and corresponding to the unique transaction identifier from the web service provider along the first logical path, invokes the response time monitoring web service along the second logical path and in response to the web service outbound transaction; and transmits the web service outbound transaction to the web service consumer;

wherein the response time monitoring web service determines a response time for the web service transaction based upon a time associated with the proxy server receiving the web service inbound transaction and the time associated with the proxy server receiving the web service outbound transaction with the corresponding unique transaction identifier; and

wherein the web service provider provides a web service to the web service consumer.

17. The web system as recited in claim 16 , further comprising: an application response measurement server coupled to the response time monitoring web service; and a log file coupled to the application response measurement server; wherein the application response measurement server receives a response time for a transaction from the response time monitoring web service and records the response time in the log file.

18. The web system as recited in claim 17 , further comprising: a management console coupled to and monitoring response times recorded in the log file.

19. The method as recited in claim 1 wherein the response time monitoring service is on a first communication path and the web service requested by the inbound transaction along a second communication path parallel to the first communication path.

Assignments (4)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 9, 2015
From: HEWLETT-PACKARD DEVELOPMENT COMPANY, L.P.
To: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP
Reel/Frame 037079/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 25, 2009
From: ELECTRONIC DATA SYSTEMS, LLC
To: HEWLETT-PACKARD DEVELOPMENT COMPANY, L.P.
Reel/Frame 022449/0267 →
CHANGE OF NAME Recorded Mar 24, 2009
From: ELECTRONIC DATA SYSTEMS CORPORATION
To: ELECTRONIC DATA SYSTEMS, LLC
Reel/Frame 022460/0948 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 6, 2005
From: PATEL, RIKIN S.
To: ELECTRONIC DATA SYSTEMS CORPORATION
Reel/Frame 016525/0520 →