Tracing ModesBy default, the simulator does not produce any output when it is running a program. However, command line options are provided that allow status information about the progress of the simulation to be printed out while it is executing.
Trace MonitorThe first and most primitive option is to specify -monitors=trace which will print out each instruction as it is executed, as well as the total number of instructions executed when the simulation terminates. For more information on the trace monitor, see the online help.
Call MonitorTracing the program's execution instruction by instruction is likely to generate a lot of output that is not very useful. A better approach is to use the -monitors=calls option that will print out the call and return behavior (including interrupts) of the program as it executes. For more information on the calls monitor, see the online help.
Verbose ModesFor more detailed information, relating to various parts of simulation, such as devices, interrupts, or events, the -verbose option enables the printing of diagnostic messages from the simulator and attached devices, as well as other parts of Avrora. To enable a list of verbose "channels", simply specify them as a comma-separated list to the -verbose option. Some examples of verbose channels are:
Verbose channels are created dynamically in Avrora, so unfortunately there is no one command to list all possible verbose channels. However, in order to get a list of the various verbose channels that can be enabled for the run that you are interested in, specify -verbose=verbose, and the verbose system will report every verbose channel registered. To enable all verbose printing, specify -verbose=all. Multiple channels can be specified with one command line argument. For example, -verbose=sim.event,sim.interrupt. Beginning with Avrora Beta 1.4.0, printers associated with simulation now print the node ID (a unique integer) and the time in clock cycles when the event being reported happens. This helps in debugging time issues, and keeping track of what node performs what event in sensor network simulations.
MonitorsFor more complicated forms of monitoring, see the page on monitoring. |