Centralized trace facility with dynamic tracing in data...

Electrical computers and digital processing systems: multicomput – Master/slave computer controlling

Reexamination Certificate

Rate now

  [ 0.00 ] – not rated yet Voters 0   Comments 0

Details

C709S201000, C709S241000, C709S241000

Reexamination Certificate

active

06480886

ABSTRACT:

FIELD OF THE INVENTION
The present invention relates to a data processing system where a plurality of data processing applications are arranged so that they may communicate with each other. More specifically, the invention relates to trace facilities, whereby errors that occur during data processing within such a system can be identified for correction.
BACKGROUND OF THE INVENTION
Tracing routines in computer software have been provided in the prior art for the purpose of tracing through a program (also referred to herein as an “application”) to assist in locating errors (also known as “bugs”) therein. Tracing assists in the determination of problems by providing a snapshot record in storage of certain types of states existing when a location in a program is reached by the data processor that is running the program. A tracing routine records in storage certain events or states that take place during the running of an application. Such events or states are often stored in a trace table in memory.
It has become very common to link up (e.g., via a network (such as the Internet, for example) a plurality of data processing applications so that they may communicate with each other to thus distribute a large data processing task over several data processing applications. For example, a customer wishes to buy and sell shares over the Internet. The customer runs a Web browser application on his home personal computer, the stock broker runs a Web server application on a larger midrange computer and a transaction processing application is running on a backend mainframe computer. These three applications communicate with each other over a network (or series of connected networks) in order to exchange data messages, which can consist of requests for processing or replies containing the results of processing. In another example, the applications can be all running on the same machine, or two applications can be running on one machine and a third on a second machine.
In order to carry out tracing on such a system of linked data processing applications, one prior art technique involves each application providing its own tracing facility such that events/states occurring for each application are logged separately into a tracing table that is unique for that application. However, if something goes wrong during the running of the plurality of applications, each of the separate trace tables must be located, examined and compared with the other trace tables in order to diagnose the reason for the problem. This can be very burdensome, especially as the number of communicating applications increases.
Another prior art technique involves setting a flag at the receiving application to inform the receiving application of what kinds of incoming messages from other applications should be traced (e.g., a certain flag could mean “log all messages of type “foo” from destination application “bar”). Once a receiving application receives a message that satisfies the set flag, the receiving application communicates with a central monitoring point for centralized logging of this event (the receipt of the message that satisfies the flag). This solves the above problem by centralizing the trace table into a single location, with each application using the same trace table. However, this gives limited control over which messages should be logged (the criteria is statically set at the receiver at a given point in time), thus resulting in an over-inclusive operation whereby the centralized log stores much more information than is necessary.
SUMMARY OF THE INVENTION
According to one aspect, the present invention provides in a data processing system wherein a plurality of data processing applications are in communication with each other, a first data processing apparatus running a first data processing application, the apparatus has: a means for receiving a message from a second data processing apparatus running a second data processing application; a means for determining whether a predetermined indication is provided in the received message; and a means for reporting the receipt of the received message to a central logging trace facility for logging of the message when the predetermined indication is provided in the received message.
According to a second aspect, the present invention provides in a data processing system wherein a plurality of data processing applications are in communication with each other, a first data processing apparatus running a first data processing application, the apparatus has: a means for determining whether receipt of a message to be sent to a second data processing apparatus running a second data processing application should be logged into a central logging trace facility; a means for providing a predetermined indication in the message when the means for determining determines that the message should be logged into the central facility; and a means for sending the message to the second data processing apparatus running the second data processing application.
According to third and fourth aspects, the present invention provides methods of carrying out the functions described above with respect to the first and second aspects, respectively.
According to fifth and sixth aspects, the present invention provides computer program products stored on a computer readable storage media for, when run on a computer, carrying out the functions described above with respect to the first and second aspects.
Therefore, with the present invention, by the use of the indication (e.g., flag) carried in the data message sent to a receiving application from a sending application, the sending application can decide, on a dynamic basis, which messages should be logged by the receiving application into the centralized monitoring point. This operation is dynamic (also called “on the fly”) in the sense that should the sending application make a quick decision that a particular message should be logged, even though previous communication between the applications would suggest that logging should not take place, the sending application can set a flag in the message to inform the receiving application that this message should be logged.
This provides a high level of dynamic control over exactly which messages should be logged, thus greatly reducing the amount of information contained in the log, in turn making it much quicker and easier to study the centralized log to determine what went wrong when a problem has occurred.


REFERENCES:
patent: 4321666 (1982-03-01), Tasar et al.
patent: 4462077 (1984-07-01), York
patent: 4598364 (1986-07-01), Gum et al.
patent: 4809168 (1989-02-01), Hennessy et al.
patent: 5359608 (1994-10-01), Belz et al.
patent: 5485574 (1996-01-01), Bolosky et al.
patent: 5642478 (1997-06-01), Chen et al.
patent: 5751956 (1998-05-01), Kirsch
patent: 5870546 (1999-02-01), Kirsch
patent: 5915114 (1999-06-01), McKee et al.
patent: 6049798 (2000-04-01), Bishop et al.
patent: 6055492 (2000-04-01), Alexander et al.
patent: 6112239 (2000-08-01), Kenner et al.
patent: 6189030 (2001-02-01), Kirsch et al.
patent: 6202199 (2001-03-01), Wygodny et al.
patent: 0238364 (1987-09-01), None
patent: 2286508 (1995-08-01), None
IBM Technical Disclosure Bulletin v37 n4B, Apr. 1994, pp369-370 “Automated Software Trace” by Yao.
IBM Technical Disclosure Bulletin n1b, Jun. 1992, pp321-322 “Lightweight Trace and Interpreter for Inter-process Timing Problems” by Cheung et al.
IBM Technical Disclosure Bulletin n7b, Dec. 1991, pp259-261 Tailorable Embedded Event Trace by Berglund et al.
IBM Research Disclosure n324 “Triggering Scheme to Trap Trace Data” by Brabec et al, Apr. 1991.
IBM Technical Disclosure Bulletin pp 5024-5026 “Dynamic Trace Mechanism for Intelligent Terminals” by Minshul et al, Mar. 1983.
IBM Technical Disclosure Bulletin n4a, Sep. 1991 pp295-297 “Distributed Trace Formatter: A program to Formal Trace Data in Any Format and Any Language” by Jordan et al.
IBM Technical Disclosure Bulletin n4a, Sep. 1991, pp292-294 “Distributed Trace: A Facility to Trace Data and Code Flows in a Requester/Server Environment” b

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

Centralized trace facility with dynamic tracing in data... does not yet have a rating. At this time, there are no reviews or comments for this patent.

If you have personal experience with Centralized trace facility with dynamic tracing in data..., we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Centralized trace facility with dynamic tracing in data... will most certainly appreciate the feedback.

Rate now

     

Profile ID: LFUS-PAI-O-2963039

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