Method, system, and program for logging statements to...

Error detection/correction and fault detection/recovery – Data processing system error or fault handling – Reliability and availability

Reexamination Certificate

Rate now

  [ 0.00 ] – not rated yet Voters 0   Comments 0

Details

C714S038110, C717S128000

Reexamination Certificate

active

06539501

ABSTRACT:

BACKGROUND OF THE INVENTION
1. Field of the Invention
The present invention relates to a method, system, and program for generating statements while processing a program in a debugging mode to determine the execution path of the program.
2. Description of the Related Art
As part of the software development process, software developers must test and debug their programs. One technique for debugging a program is to intersperse coded statements, referred to as tracing statements, within the software. When the program is executed, the trace statements are generated as output. The software developer can then determine the paths of execution of the program by reviewing the trace statements that were outputted during execution. Some tracing methods operate by having a separate debugging program that monitors the operation of the target program, i.e., the program including the trace statements that is being debugged. This debugging program would be called each time a trace statement is referenced in the target program. However, such techniques can substantially degrade the performance of executing the target program as the debugging program interrupts the execution of the target program.
Although tracing methods for debugging programs are well known in the art, and described in U.S. Pat. No. 5,067,073, entitled “Embedded Tracing Method for Identifying Program Executed Paths,” there is no specific tracing program for the Java computer language. Thus, there is a need in the art to provide efficient tracing programs for use in debugging Java programs, such as Java applets.
SUMMARY OF THE PREFERRED EMBODIMENTS
To overcome the limitations in the prior art described above, preferred embodiments disclose a system, method, and program for generating trace statements to a log file. A log method in a program including an identifier parameter is processed. The program includes multiple instances of the log method to trace the execution of the program during debugging operations. A determination is made as to whether a variable indicates that log methods called with the identifier parameter should be processed. The class and method from which the log method was called is determined if the variable indicates that log methods called with the identifier parameter should be processed. Information on the identifier parameter and determined class and method are written to the log file.
In further embodiments, the log method is processed by a thread executing the program. This thread determines whether the variable indicates that the processed log method should be processed and the class and method from which the log method was called.
Still further, the thread executing the program is executing in a first process. The thread calls a second process separate from the first process. This second process writes the trace statements to a buffer and periodically writes the trace statements from the buffer to the log file.
Yet further, the first process in which the program is executing is capable of simultaneously processing multiple log methods called from multiple threads executing in the first process. Each thread executing in the first process is capable of separately determining the class and method for each of the multiple log methods that are processed.
Preferred embodiments provide a technique for generating a trace log file for programs, such as Java programs, that simplify what is required of the software developer. With preferred embodiments, the software developer need only insert methods with a few parameters at different points within the program to monitor the path of execution of the program. Further, because in preferred embodiments a daemon in a separate process is writing the log statements to the log file, the operations of the logger daemon do not affect the execution of the program. For this reason, any failure or interruption in the execution of the program will not interfere with the logging operations of the separate logger daemon process.
Preferred embodiments are particularly suited for programming languages, such as Java, that do not include simplified tools for logging statements when debugging a program.


REFERENCES:
patent: 4462077 (1984-07-01), York
patent: 4819233 (1989-04-01), Delucia et al.
patent: 5023907 (1991-06-01), Johnson et al.
patent: 5067073 (1991-11-01), Andrews
patent: 5121489 (1992-06-01), Andrews
patent: 5138712 (1992-08-01), Corbin
patent: 5274811 (1993-12-01), Borg et al.
patent: 5513317 (1996-04-01), Borchardt et al.
patent: 5579222 (1996-11-01), Bains et al.
patent: 5659752 (1997-08-01), Heisch et al.
patent: 5708709 (1998-01-01), Rose
patent: 5758069 (1998-05-01), Olsen
patent: 5765152 (1998-06-01), Erickson
patent: 5793947 (1998-08-01), Sakamoto
patent: 5857102 (1999-01-01), McChesney et al.
patent: 5892939 (1999-04-01), Call et al.
patent: 5925127 (1999-07-01), Ahmad
patent: 6139198 (2000-10-01), Danforth et al.
patent: 6289503 (2001-09-01), Berry et al.
patent: 11003237 (1999-01-01), None
U.S. patent application Ser. No. 09/210,104 filed Dec. 11, 1998.

LandOfFree

Say what you really think

Search LandOfFree.com for the USA inventors and patents. Rate them and share your experience with other people.

Rating

Method, system, and program for logging statements to... does not yet have a rating. At this time, there are no reviews or comments for this patent.

If you have personal experience with Method, system, and program for logging statements to..., we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Method, system, and program for logging statements to... will most certainly appreciate the feedback.

Rate now

     

Profile ID: LFUS-PAI-O-3038625

  Search
All data on this website is collected from public sources. Our data reflects the most accurate information available at the time of publication.