IP Library Granted Patent US 8,015,549
Granted Patent B2
US 8,015,549 · App. 11/125,874 · Granted Sep 6, 2011

Techniques for monitoring application calls

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,015,549
App. No.
11/125,874
Granted
Sep 6, 2011
Kind
B2
Abstract

Techniques for debugging applications are provided. Access to an application is controlled by a wrapper. The wrapper intercepts calls to the application and records the calls. The calls are then passed to the application for processing. The recorded calls form a log which may be analyzed or mined to detect error conditions or undesirable performance characteristics associated with the application independent of source associated with the application.

Claims (36)

1. A machine-implemented method to execute on a machine, comprising:

generating, by the machine, a wrapper for an application, the wrapper is a script that controls input calls and outputs to the application, the application also executes on the machine, each input call is isolated by the wrapper before provided to the application and each output produced by the application is captured by the wrapper;

executing, by the machine, the wrapper when an issuer makes calls for the application;

recording, by the wrapper, the calls and processing state information of the calls for the wrapper in a log file;

mining, by the machine, the log file to adjust performance of the wrapper by altering the wrapper to adjust, by the wrapper, an order of the calls made to the application; and

passing, by the wrapper, the calls based on the adjusted order through to the application.

2. The method of claim 1 further comprising, passing a result received from the application through the wrapper and back to the issuer and recording the result.

3. The method of claim 1 further comprising:

detecting, by the wrapper, an error in the application in response to the calls; and patching, by the machine, the error within the wrapper.

4. The method of claim 1 further comprising:

detecting, by the wrapper, an error in the application in response to the calls; and patching, by the machine, the error within a source of the application.

5. The method of claim 1 , wherein generating further includes identifying a syntax for the calls by automatically parsing a header file associated with the application.

6. The method of claim 5 further comprising generating, by the machine, a schema from the header file that is used to derive the wrapper.

7. The method of claim 6 , wherein generating the schema further includes enriching at least one of the schema and the wrapper.

8. The method of claim 1 , wherein executing further includes making a name associated with an executable of the application point to the wrapper.

9. A machine-implemented method to execute on a machine, comprising:

generating, by the machine, a wrapper for an application, the wrapper is a script that controls input calls and outputs to the application, the application also executes on the machine, each input call isolated by the wrapper before provided to the application and each output produced by the application is captured by the wrapper;

intercepting, by the wrapper, a plurality of calls directed to the application, a source for the application is unavailable, only an executable for the application is available for interacting with the application;

recording, by the wrapper, the calls and state information of each call in a log file;

mining, by the machine, the log file to adjust performance of the wrapper by altering the wrapper to adjust, by the wrapper, an order of the calls made to the application; and

passing, by the wrapper, the calls based on the adjusted order to the application for execution.

10. The method of claim 9 further comprising, recording results returned from the application in response to the passed calls.

11. The method of claim 9 further comprising:

detecting, by the wrapper, an error in processing associated with the application;

and playing, by the machine, back a sequence of the plurality of calls that preceded the error.

12. The method of claim 9 , wherein passing further includes:

intercepting the calls a second time; and

recording the calls another time before passing the calls to the application for execution.

13. The method of claim 9 , wherein recording further includes interactively producing one or more extensible markup language (XML) documents while recording the calls.

14. The method of claim 13 further comprising automatically enriching, by the machine, the XML documents to correlate with references defined in a schema to elements produced in the XML documents which are selectively associated with data of the calls.

15. The method of claim 13 further comprising at least one of:

merging, by the machine, one or more of the XML documents together;

extracting, by the machine, selective information from the one or more XML documents; and

analyzing, by the machine, the one or more XML documents.

16. The method of claim 9 further comprising, performing, by the machine, one or more additional operations before passing the calls to the application, wherein the one or more additional operations are identified in a schema associated with the intercepted plurality of calls.

17. The method of claim 16 , wherein performing further includes maintaining selective global variables with each of the recorded calls.

Assignments (9)
RELEASE OF SECURITY INTEREST Recorded Oct 26, 2020
From: JEFFERIES FINANCE LLC
To: RPX CORPORATION
Reel/Frame 054486/0422 →
SECURITY INTEREST Recorded Jun 29, 2018
From: RPX CORPORATION
To: JEFFERIES FINANCE LLC
Reel/Frame 046486/0433 →
RELEASE (REEL 038041 / FRAME 0001) Recorded Jan 2, 2018
From: JPMORGAN CHASE BANK, N.A.
To: RPX CORPORATION; RPX CLEARINGHOUSE LLC
Reel/Frame 044970/0030 →
SECURITY AGREEMENT Recorded Mar 9, 2016
From: RPX CORPORATION; RPX CLEARINGHOUSE LLC
To: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 038041/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 11, 2016
From: NOVELL INTELLECTUAL PROPERTY HOLDINGS, INC.
To: RPX CORPORATION
Reel/Frame 037809/0057 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 1, 2011
From: CPTN HOLDINGS LLC
To: NOVELL INTELLECTUAL PROPERTY HOLDING, INC.
Reel/Frame 027325/0131 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 30, 2011
From: CPTN HOLDINGS LLC
To: NOVELL INTELLECTUAL PROPERTY HOLDINGS, INC.
Reel/Frame 027465/0206 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 30, 2011
From: NOVELL,INC.
To: CPTN HOLDINGS LLC
Reel/Frame 027465/0227 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 10, 2005
From: COOPER, BRIAN COLLINGS; CARTER, STEPHEN R.
To: NOVELL, INC.
Reel/Frame 016556/0349 →