[Prev] [TOC] [Chapters]


28 Appendix J: Eventlog File Format

This appendix documents the format of the eventlog file. Eventlog files are written by the simulation (when enabled). Everything that happens during the simulation is recorded into the file,

so the file can later be used to reproduce the history of the simulation on a sequence chart, or in some other form.

The file is a line-oriented text file. Blank lines and lines beginning with "#" (comments) will be ignored. Other lines begin with an entry identifier like E for Event or BS for BeginSend, followed by attribute-identifier and value pairs. One exception is debug output (recorded from EV<<... statements), which are represented by lines that begin with a hyphen, and continue with the actual text.

The grammar of the eventlog file is the following:

<file> ::= <line>*
<line> ::= <empty-line> | <user-log-message> | <event-log-entry>
<empty-line> ::= CR LF
<user-log-message> ::= - SPACE <text> CR LF
<event-log-entry> ::= <event-log-entry-type> SPACE <parameters> CR LF
<event-log-entry-type> ::= SB | SE | BU | MB | ME | MC | MD | MR | GC | GD |
                           CC | CD | CS | MS | CE | BS | ES | SD | SH | DM | E
<parameters> ::= (<parameter>)*
<parameter> ::= <name> SPACE <value>
<name> ::= <text>
<value> ::= <boolean> | <integer> | <text> | <quoted-text>

The eventlog file must also fulfill the following requirements:

Here is a fragment of an existing eventlog file as an example:

E # 14 t 1.018454036455 m 8 ce 9 msg 6
BS id 6 tid 6 c cMessage n send/endTx pe 14
ES t 4.840247053855
MS id 8 d t=TRANSMIT,,#808000;i=device/pc_s
MS id 8 d t=,,#808000;i=device/pc_s

E # 15 t 1.025727827674 m 2 ce 13 msg 25
- another frame arrived while receiving -- collision!
CE id 0 pe 12
BS id 0 tid 0 c cMessage n end-reception pe 15
ES t 1.12489449434
BU id 2 txt "Collision! (3 frames)"
DM id 25 pe 15

28.1 Supported Entry Types and Their Attributes

The following entries and attributes are supported in the eventlog file: SB (SimulationBegin): mandatory first line of an eventlog file

SE (SimulationEnd): optional last line of an eventlog file

BU (Bubble): display a bubble message

MB (ModuleMethodBegin): beginning of a call to another module

ME (ModuleMethodEnd): end of a call to another module

MC (ModuleCreated): creating a module

MD (ModuleDeleted): deleting a module

GC (GateCreated): gate created

GD (GateDeleted): gate deleted

CC (ConnectionCreated): creating a connection

CD (ConnectionDeleted): deleting a connection

CS (ConnectionDisplayStringChanged): a connection display string change

MS (ModuleDisplayStringChanged): a module display string change

E (Event): an event that is processing a message

KF (Keyframe):

abstract (Message): base class for entries referring to a message

CE (CancelEvent): canceling an event caused by a self message

BS (BeginSend): beginning to send a message

ES (EndSend): prediction of the arrival of a message

SD (SendDirect): sending a message directly to a destination gate

SH (SendHop): sending a message through a connection identified by its source module and gate id

CM (CreateMessage): creating a message

CL (CloneMessage): cloning a message either via the copy constructor or dup

DM (DeleteMessage): deleting a message


[Prev] [TOC] [Chapters]