B.2   Using the Event Dictionary

This section provides tips for using the event dictionary.

Suppose you see the icon while viewing an event log in WindView.

You can click on the icon to see the name of the event in the Tornado status line (at the bottom of the Tornado window; see Figure 5-1). As an alternative, you can locate the icon in the Legend window under WindView Help in the main Help menu. In either case, you can see that this is the taskResume event icon. Using B.3 Event Dictionary, you can look up the information on what can cause a taskResume event, what effect on the task state it may have, and what information is collected for a taskResume event, as shown in Figure 8-12.  

Most of the elements that are called out on the sample page are self-explanatory, with the possible exception of the table of information collected.

The table of information collected describes what information is logged for a particular event, and for which event-logging level that information is logged (indicated by X's in the appropriate columns):

In the sample event dictionary page above, you can see that the context (the task, ISR, or idle loop in which the event occurred), eventName, and taskId event parameters are logged when event logging is started at TST level.1

At this level, timeStamp is not actually logged. Instead, it is calculated based on the next exit from the kernel; see Task State Transition Logging Level (TST Level) for information.

These same event parameters are logged when event logging is started at AIL level, but in addition, the priority event parameter is logged, and the timeStamp is logged rather than calculated.

For example, if event logging is at TST level, when you inspect the taskResume icon with the Show Event dialog box, a display like Figure 8-12 appears (note that although the priority label is present, its value is unknown, indicated by "?").  

This provides the following information:

[1] At calculated time 0.0336625 seconds,

[2] within the context of tWdbTask (context ID 0x3fe9742 ), a taskResume event occurred.

[3] The priority of the resumed task is not known for this -logging level.

[4] The task being resumed has an ID of 0x33b6a7c, displayed here both as taskId in the Parameters area, and in the Object field (because this task is the object affected by the event).

However, if event logging is at AIL level, and task tWdbTask is instrumented, the Time field shows an exact timestamp, and the priority property displays the task priority for the affected task.


*

NOTE: Remember that another important distinction between TST level logging and AIL level logging is that for the former, events are logged and displayed only if they result in a task state transition. At AIL level, all events are logged and displayed for all objects that are instrumented.


*

NOTE: If an invalid parameter is passed to a routine, an event icon may not appear, depending on whether the error is detected before or after event logging occurs. In particular, if an invalid object ID is passed to a routine, the event icon does not appear.


1:  For information on starting event logging, see 3.4 Starting and Stopping Data Collection.

2:  For a task, the context ID is the task ID. For an ISR context, the ID is the hex value of the interrupt level; for example, an ISR that runs at INT 3 has an ID of 0x3. For the idle loop context, the ID is 0xffffffff.