IP Library Granted Patent US 8,073,927
Granted Patent B2
US 8,073,927 · App. 12/545,412 · Granted Dec 6, 2011

System and method of associating events with requests

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,073,927
App. No.
12/545,412
Granted
Dec 6, 2011
Kind
B2
Abstract

Management software that can associate events, including non page events, such as the generation of dynamic content, with HTTP requests. The management software can receive a set of HTTP request data including a request time stamp for each HTTP request in a set of HTTP requests, receive a set of event data including an event time stamp for each event in a set of events and associate each event from the set of events with a previous HTTP request from the set of HTTP requests based on the event time stamps and request time stamps. Each event can be associated with previous HTTP request closest in time.

Claims (51)

1. A method of associating requests and events, comprising:

at a web server computer, receiving a plurality of Hypertext Transfer Protocol (HTTP) requests from user computers connected to the web server computer over a first network;

in response to said receiving the plurality of the HTTP requests, initiating, by the web server computer, events at server computers connected to the web server computer over a second network;

logging HTTP requests data at the web server computer;

logging events data at the server computers;

receiving the HTTP requests data from the web server computer and the events data from said server computers at a management system residing in the second network, wherein the HTTP requests data comprises a user identification for each of the plurality of HTTP requests and a time stamp for each of the plurality of the HTTP requests, and wherein the events data comprises a user identification for each of the events and a time stamp for each of the events; and

for each user identified in the plurality of the HTTP requests and the events, generating an association associating each of the events performed in the second network for the each user with a previous HTTP request of the plurality of the HTTP requests received from the each user over the first network that is the closest in time to the each of the events.

2. The method of claim 1 , further comprising:

at the management system, time ordering the plurality of the HTTP requests and the events using said time stamp for each of the plurality of the HTTP requests and the time stamp for each of the events;

wherein said generating the association comprises said generating the association associating each of the events performed in the second network for the each user with the previous HTTP request of the plurality of the HTTP requests received from the each user over the first network that is the closest in time to the each of the events according to the time ordering.

3. The method of claim 1 , wherein the first network and the second network are the same.

4. The method of clam 1 , further comprising:

time synchronizing the web server computer with the server computers, wherein said time synchronizing operates to time synchronize the plurality of HTTP requests at the web server computer with the events at the server computers.

5. The method of claim 1 , further comprising:

preprocessing one or more of the HTTP requests data or the events data prior to said receiving the HTTP requests data and the events data at the management system;

wherein said preprocessing operates to perform one or more of:

associating one or more of the plurality of the HTTP requests with sessions;

parsing one or more of the HTTP requests data and the events data to remove one or more of one or more requests from the HTTP requests data or one or more events from the events data; or

perform gap detection to eliminate any gaps in the one or more of the HTTP requests data or the events data.

6. The method of claim 1 , wherein the user identification for each of the plurality of HTTP requests the user identification for each of the events use a common user identification.

7. The method of claim 1 , prior to said generating the association, determining whether there is a user for each of the events that corresponds to each of the HTTP requests; and

generating user context for each of the events without a corresponding user.

8. The method of claim 1 , wherein the management system is comprised in one or more of the web server computer or the server computers.

9. The method of claim 1 , wherein said initiating events at said server computers comprises initiating one or more scripts to insert dynamic content into a web page or to carry out one or more back end business processes.

10. The method of claim 1 , wherein said initiating events at said server computers comprises initiating generation of at least one dynamic advertisement.

11. A computer program product comprising at least one non-transitory computer readable storage medium storing computer instructions executable by a processor to:

receive HTTP requests data from a web server computer and receive events data from one or more server computers at a management system, wherein the web server computer is coupled to one or more user computers and wherein the one or more server computers are coupled to the web server computer; and

for each user in the HTTP requests data and the events data, generate at the management system an association associating each event for the each user with a HTTP request received from the each user that is the closest in time to the event.

12. The computer program product of claim 11 , wherein the computer instructions are further executable by a processor to:

time order the HTTP requests data and the events data at the management system to generate time ordered HTTP request data and time ordered events data;

wherein said generating at the management system the association associating each event comprises using the time ordered HTTP request data and the time ordered events data to said generate the association.

13. The computer program product of claim 11 , wherein in response to said receiving the plurality of the HTTP requests, the web server computer is operable to initiate events at server computers connected to the web server computer;

wherein said initiating events at said server computers comprises initiating one or more scripts to insert dynamic content into a web page or to carry out one or more back end business processes.

14. The computer program product of claim 11 , wherein the computer instructions are further executable by a processor to:

prior to said generating the association, determine whether there is a user for each of the events that corresponds to each of the HTTP requests; and

generate user context for each of the events without a corresponding user.

15. The computer program product of claim 11 , wherein the management system is comprised in one or more of the web server computer or the server computers.

16. A system for associating requests and events, comprising:

a web server computer connected to a plurality of user computers for receiving one or more Hypertext Transfer Protocol (HTTP) requests from the plurality of user computers, wherein the web server computer is operable to log the received one or more HTTP requests;

one or more server computers connected to the web server computer, wherein the one or more server computers are operable to log one or more events; and

a management system operable to:

receive HTTP requests data from the web server computer and receive events data from the one or more server computers, wherein the HTTP requests data comprises a user identification for each of the one or more HTTP requests and a time stamp for each of the one or more HTTP requests and wherein the events data comprises a user identification for each of the one or more events and a time stamp for each of the one or more events; and

for each user identified in the HTTP requests data and the events data, generate an association associating each of the events for the each user with a previous HTTP request of the HTTP requests received from the each user that is the closest in time to the each of said events.

17. The system of claim 16 , wherein the management system is further operable to:

time order the HTTP requests data and said events data using said time stamp for each of one or more HTTP requests and said time stamp for each of the one or more events;

wherein said generating the association comprises said generating the association associating each of the events for the each user with the previous HTTP request of the plurality of the HTTP requests received from the each user that is the closest in time to the each of the events according to the time ordering.

18. The system of claim 16 , wherein, in response to receiving the one or more HTTP requests, the web server computer is operable to initiate the one or more events at the one or more server computers.

19. The system of claim 16 , wherein said initiating events at the server computers comprises initiating one or more scripts to insert dynamic content into a web page or to carry out one or more back end business processes.

20. The system of claim 16 , wherein the management system is further operable to:

prior to said generating the association, determine whether there is a user for each of the events that corresponds to each of the HTTP requests; and

generate user context for each of the events without a corresponding user.

Assignments (11)
IP BUSINESS SALE AGREEMENT Recorded Sep 13, 2016
From: OPEN TEXT S.A.
To: OT IP SUB, LLC
Reel/Frame 040019/0627 →
CERTIFICATE OF AMALGAMATION Recorded Sep 13, 2016
From: IP OT SUB ULC
To: OPEN TEXT SA ULC
Reel/Frame 040019/0578 →
CERTIFICATE OF CONTINUANCE Recorded Sep 13, 2016
From: OP IP SUB, LLC
To: IP OT SUB ULC
Reel/Frame 040019/0500 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 19, 2011
From: VIGNETTE PARTNERSHIP, LP
To: OPEN TEXT S.A.
Reel/Frame 027483/0205 →
CERTIFICATE OF CONVERSION Recorded Oct 14, 2011
From: VIGNETTE OPERATING, LLC
To: VIGNETTE PARTNERSHIP, LP
Reel/Frame 027066/0773 →
CERTIFICATE OF CONVERSION Recorded Oct 13, 2011
From: VIGNETTE CORPORATION
To: VIGNETTE OPERATING, LLC
Reel/Frame 027091/0009 →
MERGER Recorded Oct 12, 2011
From: VIGNETTE SOFTWARE, LLC
To: VIGNETTE CORPORATION
Reel/Frame 027077/0423 →
INTELLECTUAL PROPERTY PURCHASE AGREEMENT Recorded Jan 14, 2010
From: VIGNETTE LLC (96%)
To: VIGNETTE SOFTWARE LLC
Reel/Frame 023792/0470 →
INTELLECTUAL PROPERTY PURCHASE AGREEMENT Recorded Jan 11, 2010
From: VIGNETTE CORPORATION (96%)
To: VIGNETTE LLC
Reel/Frame 024006/0001 →
INTELLECTUAL PROPERTY PURCHASE AGREEMENT Recorded Jan 11, 2010
From: VIGNETTE CORPORATION (4%)
To: VIGNETTE SOFTWARE LLC
Reel/Frame 023768/0708 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 22, 2009
From: ARTZ, JOHN C., JR.; PATHAK, HEEREN
To: VIGNETTE CORPORATION
Reel/Frame 023702/0196 →