Object Level Trace

Object Level Trace (OLT) is an extension of the IBM Distributed Debugger that enables you to trace and debug multilingual, distributed applications from a single workstation. Object Level Trace (OLT) enables you to monitor the flow of a distributed application, and to seamlessly debug client and server code from a single workstation.

Tracing distributed applications
The trace facility consists of the following components:

A sample trace:
sample trace

The sample trace is available on the workstation where you have installed the OLT viewer. You can view this sample trace by opening the following file:

ngwin.gif (1069 bytes)%DER_DRIVER_PATH%\temp\PolicyApp.edb
ngaix.gif (991 bytes)/tmp/PolicySample.edb

The trace
Each trace line on the display represents either a business object, servlet, JSP, EJB, or client application. Object method calls are shown as circles. If the method call is debuggable, the circle is filled-in. Start and exit events are shown as squares. An arrow connects paired events, with the arrowhead representing the direction of data flow.

Because distributed applications are often multi-threaded, it can be difficult to determine the relationship between threads and events. The trace uses "partial-order" representation to provide you with a clearer picture of this relationship. Partial order concentrates on the causal relationships between events, rather than their chronological order. In some cases, you may prefer a "real-time" display. OLT enables you to switch quickly between partial-order and real-time display by clicking the Toggle realtime display toolbar button: . You can also switch between display modes by selecting File > Preferences > OLT > Display.

The sample trace displayed in realtime mode:

You can use the trace to analyze performance, isolate communication errors, and set method breakpoints in order to attach the debugger, or attach the debugger on demand.

The OLT viewer can display up to a maximum of 1000 trace lines (object instances).

Debugging distributed applications
A typical distributed application is composed of three parts:

Traditionally, this kind of distributed application was difficult to debug for two reasons:

  1. You had to run a local debugger on both the client and the server. This often meant interacting with two or more machines in different locations.
  2. If multiple clients were interacting with the server, it was difficult to know which client was calling the server.

OLT solves the first problem by enabling you to debug both client and server code seamlessly from one workstation, as if both client and server code resided on a single machine. Secondly, the trace provides you with a clear picture of the communication between client and server. Each debuggable event on the trace has a pop-up menu from which you can set a method breakpoint.

You can debug your application from the client machine, the server, your development workstation, or any other machine on which OLT and the IBM Distributed Debugger are installed. Before running your application, start OLT on the machine where you want to debug. After starting OLT, start your client application. It will connect to the OLT Client Controller. If you select the trace and debug mode OLT automatically launches the debugger on the designated workstation when it reaches the first method breakpoint.


Supported platforms and languages
Partial-order display
Real-time display
Performance analysis


Tracing a distributed application
Setting method breakpoints on the trace