tsplot

1

tsplot

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

          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/matplotlib.pylab.html#-plot.

  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_manual.html#htoc53. 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 , see also for archives.

## AUTHORS

`tsplot` is written by Dimitri Fontaine dim@tapoueh.org.