OAA Monitor
version 2.0.3, November 1999



Contents:


Introduction

The OAA Monitor program is used to trace, debug and profile communication events for an OAA agent community. When the monitor agent connects to a Facilitator agent, it asks the Facilitator for a list of all agents currently connected to the system, and then graphically displays the agents arranged in a circle around the Facilitator. As agents join or leave the dynamic agent community, the Monitor agent updates its display accordingly.

From the vantage point of the graphical community display, an agent developer can examine meta-information about individual agents or trace communication messages among the participants.

Agent Inspection

Clicking on an agent icon selects the agent and displays information about it:

The selected agent is used by several other Monitor functions: event logging (to view only messages to and from the selected agent), and message filtering.

Clicking the right mouse button on an agent icon pops up an action menu for the agent. From here, a developer may choose to send a kill message to a specific agent, or can issue a Ping request to see how fast the agent responds (if at all).

Event Logging

If the record button is turned on in the interface, interagent communication messages will be graphically drawn on the display, and saved in a log. A developer can choose to view the log window with the show log button , and can step through the log trace one message at a time using forward and back buttons. As events are added to the log, the total number of messages and number of data byes sent and received are displayed on the main information panel. The logged events can be saved to a file using the "Save log text" command

Log window

From the log window, developers can choose to see a "high level" view of the communication messages, or a "communication level" view. The high level view attempts to format the low-level messages into units which are more in line semantically with what a developer writes in his or her code. For instance, the internal message post_query() is reformatted into the OAA library primitive solve(), with solutions to a solve request displayed one per line. The lower-level "communication" view is useful to see exactly which bytes were sent between two agents.

Searching through logged events

The log can be searched for a particular string value using the find in log command accessible from the menu or by typing ctrl-F. F3 will find the next instance of a search string. The logged messages can also be trimmed to display only those messages coming from a single agent -- to do so, choose an agent by clicking on it in the main display window, and then select the "Only current agent" checkbox option in the log window.

Profiling

The Monitor tools can also be used for simple profiling of an agent application. Selecting the "Chart data size" option from the "Profile" menu will display a chart depicting a graph of the number of bytes sent and received by each agent during the logged session.

Options

By selecting the appropriate option from the Options menu, the user can choose whether or not to graphically view messages being sent among agents in the community.

Also available is the ability to switch between different Look and Feel interfaces (Windows, X/Motif, and Java's Metal Look)

To Do

Not yet implemented:

Bugs


Copyright (c) 1998 by SRI International