Browse Prior Art Database

Diving into Debug messages

IP.com Disclosure Number: IPCOM000198743D
Publication Date: 2010-Aug-13
Document File: 2 page(s) / 25K

Publishing Venue

The IP.com Prior Art Database

Abstract

This is a software enhancement to a common log function to save a callstack when a partial match is made on a (dynamically administrator-set) string.

This text was extracted from a PDF file.
This is the abbreviated version, containing approximately 57% of the total text.

Page 1 of 2

Diving into Debug messages

Disclosed is a process of enhancing complex software to produce call stacks for an output message. The disclosed process enables tracing software for live debug sessions, as well as training purposes, without the need of additional tools.

Typically non-fatal errors in complex, undocumented software are first examined by enabling debug output for a specific problem area. Indirection complicates mapping the specific problem area to code. Knowledge of a function call process may add information. Additional information may help developers solve issues that cannot be reproduced in the developer environments.

Complex software can be difficult to document in sufficient detail for support personnel at a lower knowledge level than the developer. However using the disclosed process, non-development support can iteratively view stacks by targeting text during a debug session. Using the disclosed process helps to create an understanding of how various code areas interact without a need for additional tools. The disclosed process also benefits third-

p

                                               arty code when the third party code is in a systems language, by mapping output functions into a logger and having symbols available.

For example, all output of a code segment (from a message including optional debug) is mapped to a common function in step A. For example, mapping

printf

                                     or other common output functions to a central output function may perform the desired mapping relatively easily. A mechanism exists for administrators to dynamically change a string that is a target of a search argument in step B. Within the output function, when the output string (from A) contains the string of the search argument (from B) then a stack walker is called (D) in step C. A stack walker sends annotated stack data to the output function in step D.

The operation is a common process of relating stack offsets to library offsets to determine a function name. Function parameters are further related to the values on the stack. For example,

producing results such as,

x"hex

_offset"

F

unction1 (

paramete

r...