IP Library › Granted Patent US 7,962,547
Granted Patent B2
US 7,962,547 · App. 12/350,324 · Granted Jun 14, 2011

Method for server-side logging of client browser state through markup language

Assignee: International Business Machines Corporation
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 7,962,547
App. No.
12/350,324
Granted
Jun 14, 2011
Kind
B2
Abstract

One aspect of the present invention includes capturing a client browser state and communicating this captured browser state within markup text for logging at a web server. In one embodiment, the contents of the DOM (Document Object Model) of a webpage accessed by a client are traversed and written as markup text in a string of characters, such as HTML. This markup, in addition to metadata specific to identify the browser display environment, is transmitted from the client to the server as text within a HTTP request. The server may then log the markup text and the metadata for later access. The logged markup text and the metadata can be used to recreate the exact display which occurred within the client browser, and therefore provide details useful for webpage problem determination, testing, and development.

Claims (50)

1. A method for performing server-side logging of a client browser state, comprising:

receiving, within a browser operating on a client computer system, webpage content from a web server;

displaying the webpage content in the browser;

capturing a state of the webpage as displayed within the browser;

compiling a metadata string representing metadata defining specifications of an identified operating environment of the browser, the identified operating environment being one of a plurality of supported operating environments;

traversing each Document Object Model (DOM) element of the captured state of the webpage;

compiling a DOM elements string representing each DOM element and its associated data associated with each DOM element within the captured state of the webpage;

sending the metadata string and the DOM elements string strings to the web server; and

logging the metadata string and DOM elements string strings within a data store accessible by the web server; and

recreating a simulation of the captured state of the webpage from the DOM elements string, the simulation displayed in a second browser operating on a second computer system, wherein an operating environment of the second browser is matched to the specifications of the identified operating environment defined in the metadata string.

2. The method of claim 1 , wherein the state of the webpage is captured responsive to webpage content being displayed in the browser.

3. The method of claim 1 , wherein the state of the webpage is captured responsive to an execution of a script by the client browser.

4. The method of claim 1 , wherein the state of the webpage is captured responsive to receiving a signal from a user that the state of the webpage should be logged.

5. The method of claim 1 , wherein scripting executed within the webpage determines when to capture the state of the webpage.

6. The method of claim 1 , wherein the state of the webpage as displayed within the browser includes input values provided by a user.

7. The method of claim 1 , wherein the metadata string and DOM elements string strings are sent to the web server within a HTTP request, and wherein the metadata includes specifications of the identified operating environment including one or more of browser version, screen resolution, and operating system version.

8. A system, comprising:

at least one processor; and

at least one memory which stores instructions operable with the at least one processor for performing server-side logging of a client browser state, the instructions being executed for:

receiving, within a browser operating on a client computer system, webpage content from a web server;

displaying the webpage content in the browser;

capturing a state of the webpage as displayed within the browser;

compiling a metadata string representing metadata defining specifications of an identified operating environment of the browser, the identified operating environment being one of a plurality of supported operating environments;

traversing each Document Object Model (DOM) element of the captured state of the webpage;

compiling a DOM elements string representing each DOM element and its associated data associated with each DOM element within the captured state of the webpage;

sending the metadata string and the DOM elements string strings to the web server; and

logging the metadata string and DOM elements string strings within a data store accessible by the web server; and

recreating a simulation of the captured state of the webpage from the DOM elements string, the simulation displayed in a second browser operating on a second computer system, wherein an operating environment of the second browser is matched to the specifications of the identified operating environment defined in the metadata string.

9. The system of claim 8 , wherein the state of the webpage is captured responsive to webpage content being displayed in the browser.

10. The system of claim 8 , wherein the state of the webpage is captured responsive to an execution of a script by the client browser.

11. The system of claim 8 , wherein the state of the webpage is captured responsive to receiving a signal from a user that the state of the webpage should be logged.

12. The system of claim 8 , wherein scripting executed within the webpage determines when to capture the state of the webpage.

13. The system of claim 8 , wherein the state of the webpage as displayed within the browser includes input values provided by a user.

14. The system of claim 8 , wherein the metadata string and DOM elements string stings are sent to the web server within a HTTP request, and wherein the metadata includes specifications of the identified operating environment including one or more of browser version, screen resolution, and operating system version.

15. A computer program product comprising a non-transitory computer useable medium having a computer readable program for performing server-side logging of a client browser state, wherein the computer readable program when executed on a computer causes the computer to:

receive, within a browser operating on a client computer system, webpage content from a web server;

display the webpage content in the browser;

capture a state of the webpage as displayed within the browser;

compile a metadata string representing metadata defining specifications of an identified operating environment of the browser, the identified operating environment being one of a plurality of supported operating environments;

traverse each Document Object Model (DOM) element of the captured state of the webpage;

compile a DOM elements string representing each DOM element and its associated data associated with each DOM element within the captured state of the webpage;

send the metadata string and the DOM elements string strings to the web server; and

log the metadata string and DOM elements string strings within a data store accessible by the web server; and

recreate a simulation of the captured state of the webpage from the DOM elements string, the simulation displayed in a second browser operating on a second computer system, wherein an operating environment of the second browser is matched to the specifications of the identified operating environment defined in the metadata string.

16. The computer program of claim 15 , wherein the state of the webpage is captured responsive to webpage content being displayed in the browser.

17. The computer program of claim 15 , wherein the state of the webpage is captured responsive to an execution of a script by the client browser.

18. The computer program of claim 15 , wherein the state of the webpage is captured responsive to receiving a signal from a user that the state of the webpage should be logged.

19. The computer program of claim 15 , wherein scripting executed within the webpage determines when to capture the state of the webpage.

20. The computer program of claim 15 , wherein the state of the webpage as displayed within the browser includes input values provided by a user.

21. The computer program of claim 15 , wherein the metadata string and DOM elements string strings are sent to the web server within a HTTP request, and wherein the metadata includes specifications of the identified operating environment including one or more of browser version, screen resolution, and operating system version.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 8, 2009
From: KERN, STEVEN M.; PLACER, JEFFREY R.; RANDALL, BENJAMIN J.; STEVENS, JACOB A.
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 022074/0965 →
Continuity (1)
Related Publication 20100174774A1 · Jul 8, 2010