JAWS Specification - Scripting and Test Execution
We need a simple demo app that downloads a target image to some nodes, executes it for a certain time, gets the logs and writes them to a file (including the necessary checks and error handling).
This should be able to jumpstart a jaws user in under an hour!!
DSNTargetLogger
We provide demo application called DSNTargetLogger
in Java which offers the above demands.
Download first DSNTargetLogger.tar.bz2 and unpack it to an empty directory. Before running the application adapt the access credentials in nodelist to your DSN server settings.
DSNTargetLogger
supports several modes: flash and no flash (all nodes or certain nodes), with logging and without logging.
# flash only the nodes java -jar DSNTargetLogger.jar <image> <node-list> # write target logs to files java -jar DSNTargetLogger.jar null <node-list> <time> <path> # flash the nodes and write target logs to files java -jar DSNTargetLogger.jar <image> <node-list> <time> <path>
image
: path to flash image (e.g.hexfiles/blink.tos2.tmote.hex
orhexfiles/blink.tos2.tmote.hex
)node-list
: property file with a list of nodes (e.g.tinynode-list.properties
ortmote-list.properties
)time
: execution time in minutespath
: directory to write the logs (must exist and be writeable)
If you write an own node-list
remember that the entries node?.address
must be defined between 1
and nodes.count
, otherwise the application will not accept the list...
Log File Format
The log files are named the following way:
<address>-<starttimestamp>-<executiontime>min.log e.g. 00043f000184-20070628150431-30min.log
address
: MAC address of the DSN nodestarttimestamp
: timestamp when the logging is started (after flashing all targets, immediately before power on targets)executiontime
: running time in minutes
Some example lines from a log file:
4313 1 16631590 2007-06-26 11:12:05.0: SkewMsg: 0 5 8 1 0 44 0 0 88 b0 36 4 0 0 60 87 4313 2 16631607 2007-06-26 11:12:06.0: processSkew() 4313 3 16631624 2007-06-26 11:12:06.0: processCmd
- param: boot counter (auto-incrementing during DSN node reset)
- param: log id (auto-incrementing on each received message from target node, starts by 0 after reset)
- param: uptime of DSN node in ticks (1 tick = ~1 millisecond, starts by 0 after reset)
- param: date where the entry was inserted into database
- param: timestamp where the entry was inserted into database
the received message from the target node follows after the colon and whitespace