6.1. File structure

The default encoding is utf-8. You can use a different encoding, like in:

<?xml version="1.0" encoding="ISO-8859-1"?>

Scenarios are enclosed into tsung tags:

<?xml version="1.0"?>
<!DOCTYPE tsung SYSTEM "/usr/share/tsung/tsung-1.0.dtd" [] >
<tsung loglevel="info">
...
</tsung>

If you add the attribute dumptraffic=”true”, all the traffic will be logged to a file.

Warning

this will considerably slow down Tsung, so use with care. It is useful for debugging purpose. You can use the attribute dumptraffic=”light” to dump only the first 44 bytes.

Since version 1.4.0, you have also a specific logging per protocol, using dumptraffic=”protocol”. It’s currently only implemented for HTTP: this will log all requests in a CSV file, with the following data:

#date;pid;id;http method;host;URL;HTTP status;size;duration;transaction;match;error;tag

Where:

field description
date timestamp at the end of the request (seconds since 1970-01-01 00:00:00 UTC)
pid erlang process id
id tsung user id
host server hostname
url URL (relative)
HTTP status HTTP reponse status (200, 304, etc.)
size reponse size (in bytes)
duration request duration (msec)
transaction name of the transaction (if any) this request was made in
match if a match is defined in the request: match|nomatch (last <match> if several are defined)
error name of http error (or empty)
tag tag name if the request was tagged; empty otherwise

Warning

In the general case (several Tsung clients used), the resulting file will not be sorted, so you may have to sort it before analyzing it.

For heavy load testing (tens of thousands requests per second), the protocol logging may overload the controller. In this case, you can use protocol_local instead. In this case, the log files will be written on each slave locally. You will have to manually merged the logs at the end of the test.

The loglevel can also have a great impact on performance: For high load, warning is recommended.

Possible values are:

  • emergency
  • critical
  • error
  • warning
  • notice (default)
  • info
  • debug

For REALLY verbose logging, recompile tsung with make debug and set loglevel to debug.