tsplot man page

tsplot — Plot several tsung logs on the same charts, for comparison purpose.

Synopsis

tsplot [ -c configuration file ] [ -d images output directory ] [ -v verbose ] [ legend logfile ]

Description

Tsung comes with a plotting tool using gnuplot, producing some graphs from the tsung.log file data. tsplot is able to plot data from several tsung.log files onto the same charts serie, for further comparison and analyze.

Options

-c
--config
specifies the configuration file to use. Default is http.en.plots.conf.
-d
--outdir
directory where tsplot saves the images it produces, defaults to /tmp/tsung.
-v
--verbose
makes tsplot very verbose about what it does.

Configuration

The configuration file of tsplot allows one to define the plots you want to obtain, from their label to the data they will show. The configuration file adopts a .ini file syntax, each section defining a chart.

tsplot comes with two sample configuration files, namely http.plots.en.conf and pgsql.plots.en.conf. They respectively define charts to be plotted for a tsung HTTP test and a tsung PGSQL test.

A DEFAULT section may be provided, any element configured here may then be overridden into a specific plot section.

Another configuration file is used by tsplot: the tsung/stats.conf one. It's used to define by type the statistics to be read into tsung log files, and you shouldn't need to edit it, short of adding support for new tsung statistics.

Common settings, to be found into DEFAULT section or any specific chart section.

encoding
set here the encoding used thereafter in the file, for labels and titles.
dpi
dpi setting of produced charts images
tn_dpi
dpi setting of produced charts thumbnail images
imgtype

type of chart image to produce, as in png or ps

A complete list might be obtained on the python-matplotlib website, http://matplotlib.sourceforge.net/

xlabel

default label for horizontal axe, often you want seconds or minutes, depending on xfactor.

Please note you can also set some defaults for ylabel, but this seems not to be a good idea in practise.

xfactor
tsung logs statistics in its logfile every 10 seconds. By default, charts will not scale this and have seconds as horizontal axis units. By setting an xfactor of 60, you have a minute precision on horizontal axis.
yfactor

same as xfactor, but for vertical axis.

Depending on the data you obtain with your tests, you may want to adapt the vertical scale of your plotting. For example, the page.mean statistic is logged in milliseconds by tsung. You may want to display seconds if this unit better fits your measures. Then simply set yfactor = 1000.

styles

set here any number of matplotlib styles you want to use, separated by spaces, as available here: http://matplotlib.sourceforge.net/matpl….

For exemple, set styles = b- g+ r- cx for plotting first dataset (see stats below) with a blue solid line, second with green plus symbols, third with a red line and last with cyan cross symbols.

This could fit a stats = 200.count 400.count stats setting when plotting two tsung logs.

You then can define any number of plot, one by section, and give them an arbitrary name. The name must be unique, and will be used for naming output images.

Any option available in DEFAULT section is also available in any specific chart section, with the same meaning and effect. The specific setting will systematically override the DEFAULT one.

title
Title of the chart, as printed into the resulting image.
stats

The statistics properties to use for this plotting, as named in the tsung/stats configuration file. Please see this bundled file for a list of what is available.

Tsung provide several types of statistics, as documented here: http://tsung.erlang-projects.org/user_m…. The two main types of statistics used are sample and counter. A third one is gauge but is only use for a single statistic (users).

sample provides count, mean, stdvar, max, min and gmean (global mean) properties, and counter provides only count and totalcount. gauge provide count and max.

The stats setting can accept several stat.property elements, separated by spaces.

Examples: stats = users.count to plot the number of simultaneously connected users, and stats = 200.count 400.count to plot given HTTP return codes count, both on the same chart.

Please notice tsplot is currently limited to use only one horizontal and only one vertical scales. matplotlib is able to define some more complex drawings, but tsplot is not yet able to benefit from this.

legend

Legend prefix, which will be followed by the legend given on command line.

Each plot on a chart has a legend entry, you configure here the meaning of the plot (say 'concurrent users') and tsplot will add it the name of the data serie being plotted (say 'scenario x'). You'd obtain this legend: 'concurrent users scenario x'.

ylabel
label for vertical axe

Configuration Example

Please see the given configuration examples which should be distributed in /usr/share/doc/tsung/tsung-plotter/http.plots.en.conf and /usr/share/doc/tsung/tsung-plotter/pgsql.plots.en.conf.

Bugs

Please reports bugs to the mailing list <tsung-users@process-one.net> or in the bug tracker <URL:https://support.process-one.net/browse/…>, see also <URL:https://lists.process-one.net/mailman/l…> for archives.

Authors

tsplot is written by Dimitri Fontaine <dim@tapoueh.org>.

Info

February 2007