IP Library Granted Patent US 7,681,182
Granted Patent B1
US 7,681,182 · App. 12/266,207 · Granted Mar 16, 2010

Including function call graphs (FCG) generated from trace analysis data within a searchable problem determination knowledge base

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,681,182
App. No.
12/266,207
Granted
Mar 16, 2010
Kind
B1
Abstract

A trace file providing details of an execution of a software application experiencing unexpected behavior can be identified. The trace file can be converted into a graph structure (e.g., Function Call Graph), which details functions called during the execution, a calling relationship, and errors encountered during the execution. The converted graph structure can be programmatically matched against a set of stored graph structures to determine matched results. Each stored graph structure can correspond to unique record of a symptom database. Each unique record can be associated with a determined problem. The matched results can be provided as possible problems causing the unexpected behavior of the software application.

Claims (13)

1. A method for providing problem determination information comprising:

converting, via a processor executing a computer program product stored in a storage medium, a trace file into a graph structure, the trace file comprising execution details of a software application experiencing unexpected behavior, the trace file comprising data for a set of discrete programmatic functions called during execution of the software application, a calling relationship among the set of programmatic functions, an end condition for each of the functions called, and any error conditions encountered during function execution, the error conditions comprising the unexpected behavior, the graph structure comprising a set of nodes, one for each discrete programmatic function of the trace file and one for each error condition of the trace file, and a set of directional edges connecting the nodes, one connecting edge for each calling relationship and one connecting edge connecting an error condition node and a function node for the discrete programmatic function associated with the error condition; and

providing, via a processor executing a computer program product stored in a storage medium, results from matching the converted graph structure against a plurality of stored graph structures, wherein each stored graph structure corresponding to unique record of a symptom database, each the unique record also being associated with a determined cause of the unexpected behavior, wherein the matched results comprise identifiers for the determined causes associated with the unique records for which stored graph structures match the converted graph structure.

2. The method of claim 1 , further comprising:

adding, via a processor executing a computer program product stored in a storage medium, a record to the symptom database that includes a determined cause of the unexpected behavior and the converted graph structure, whereby the added record is able to be queried and returned as a possible cause of unexpected behavior during future queries of the symptom database.

3. The method of claim 1 , wherein the records of the symptom database further: comprise analysts input details related to the determined cause of the unexpected behavior, wherein the provided results comprise the analysts input details.

4. A computer program product for providing problem determination information comprising:

a computer readable physical storage medium having computer usable program code embodied therewith, wherein said computer usable program code is executable by a computer comprising at least a processor and a memory, the computer usable program code comprising:

computer usable program code configured to convert a trace file into a graph structure, the trace file comprising execution details of a software application experiencing unexpected behavior, the trace file comprising data for a set of discrete programmatic functions called during execution of the software application, a calling relationship among the set of programmatic functions, an end condition for each of the functions called, and any error conditions encountered during function execution, the error conditions comprising the unexpected behavior, the graph structure comprising a set of nodes, one for each discrete programmatic function of the trace file and one for each error condition of the trace file, and a set of directional edges connecting the nodes, one connecting edge for each calling relationship and one connecting edge connecting an error condition node and a function node for the discrete programmatic function associated with the error condition; and

computer usable program code configured to provide results from matching the converted graph structure against a plurality of stored graph structures, wherein each stored graph structure corresponding to unique record of a symptom database, each the unique record also being associated with a determined cause of the unexpected behavior, wherein the matched results comprise identifiers for the determined causes associated with the unique records for which stored graph structures match the converted graph structure.

5. The computer program product of claim 4 , said computer usable program code that is executable by a computer comprising at least a processor and a memory comprising:

computer usable program code configured to add a record to the symptom database that includes a determined cause of the unexpected behavior and the converted graph structure, whereby the added record is able to be queried and returned as a possible cause of unexpected behavior during future queries of the symptom database.

6. The computer program product of claim 4 , wherein the records of the symptom database further comprise analysts input details related to a determined cause of the unexpected behavior, wherein the provided results comprise the analysts input details.

Assignments (8)
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENT RIGHTS (REEL 062079, FRAME 0677) Recorded Mar 3, 2026
From: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT
To: X CORP. (F/K/A TWITTER, INC.)
Reel/Frame 075015/0574 →
RELEASE OF SECURITY INTEREST Recorded Apr 30, 2025
From: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT
To: X CORP. (F/K/A TWITTER, INC.)
Reel/Frame 071127/0240 →
RELEASE OF SECURITY INTEREST Recorded Mar 27, 2025
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: X CORP. (F/K/A TWITTER, INC.)
Reel/Frame 070670/0857 →
SECURITY INTEREST Recorded Oct 28, 2022
From: TWITTER, INC.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 062079/0677 →
SECURITY INTEREST Recorded Oct 28, 2022
From: TWITTER, INC.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 061804/0001 →
SECURITY INTEREST Recorded Oct 28, 2022
From: TWITTER, INC.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 061804/0086 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 16, 2014
From: INTERNATIONAL BUSINESS MACHINES CORPORATION
To: TWITTER, INC.
Reel/Frame 032075/0404 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 6, 2008
From: MISTRY, HARJINDERSINGH G.; VIRAJPET, MITHUN B.
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 021797/0879 →