Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Browse files

rename idx-tsunami to tsung step 3

SVN Revision: 595
  • Loading branch information...
commit 5345a3b5a8a6d785ad8b03f7277f2b4441c12ce6 1 parent 712f843
@nniclausse nniclausse authored
Showing with 469 additions and 468 deletions.
  1. +21 −21 LISEZMOI
  2. +25 −25 Makefile.in
  3. +3 −3 README
  4. +1 −1  config.guess
  5. +17 −17 configure
  6. +5 −5 configure.in
  7. +4 −4 debian/control
  8. +5 −5 debian/copyright
  9. +2 −2 debian/rules
  10. +2 −2 debian/tsung.dirs
  11. +4 −4 doc/Design.txt
  12. +3 −3 doc/Design_fr.txt
  13. +2 −2 doc/Jabber.txt
  14. +4 −4 doc/Makefile
  15. +2 −2 doc/tsung-inside.fig
  16. +16 −15 doc/tsung.1.sgml
  17. +96 −96 doc/user_manual.html
  18. +79 −79 doc/user_manual.tex
  19. +3 −3 examples/http_distributed.xml.in
  20. +3 −3 examples/http_simple.xml.in
  21. +3 −3 examples/jabber.xml.in
  22. +3 −3 examples/pgsql.xml.in
  23. +1 −1  include/ts_config.hrl
  24. +1 −1  include/ts_http.hrl
  25. +14 −14 src/analyse_msg.pl.in
  26. +21 −21 src/log2tsung.pl.in
  27. +1 −1  src/templates/footer.thtml
  28. +1 −1  src/templates/graph.thtml
  29. +1 −1  src/templates/report.thtml
  30. +1 −1  src/tsung/ts_client_sup.erl
  31. +3 −3 src/tsung/ts_jabber_common.erl
  32. +1 −1  src/tsung/ts_launcher.erl
  33. +2 −2 src/tsung/ts_search.erl
  34. +2 −2 src/tsung/ts_session_cache.erl
  35. +2 −2 src/tsung/ts_utils.erl
  36. +5 −5 src/tsung/tsung.app.src
  37. +1 −1  src/tsung/tsung.erl
  38. +1 −1  src/tsung/tsung.rel.src
  39. +2 −2 src/tsung_controller/ts_config.erl
  40. +17 −17 src/tsung_controller/ts_config_server.erl
  41. +2 −2 src/tsung_controller/ts_mon.erl
  42. +2 −2 src/tsung_controller/ts_os_mon.erl
  43. +4 −4 src/tsung_controller/ts_user_server.erl
  44. +6 −6 src/tsung_controller/tsung_controller.app.src
  45. +4 −4 src/tsung_controller/tsung_controller.erl
  46. +1 −1  src/tsung_controller/tsung_controller.rel.src
  47. +1 −1  src/tsung_recorder/ts_proxy_http.erl
  48. +6 −6 src/tsung_recorder/tsung_recorder.app.src
  49. +4 −4 src/tsung_recorder/tsung_recorder.erl
  50. +1 −1  src/tsung_recorder/tsung_recorder.rel.src
  51. +2 −2 tsung-1.0.dtd
  52. +46 −46 tsung.sh.in
  53. +10 −10 tsung.spec.in
View
42 LISEZMOI
@@ -1,23 +1,23 @@
# $Id$
- IDX-TSUNAMI LISEZMOI
+ Tsung LISEZMOI
1. Introduction
1.1. G�n�ralit�s
- Ce document donne un rapide descriptifs de IDX-TSUNAMI, qui est
+ Ce document donne un rapide descriptifs de Tsung, qui est
distribu� sous les termes de la GNU General Public License version 2
(voir le fichier COPYING).
1.2. Qu'est-ce que ce logiciel fait?
- Le propos de IDX-TSUNAMI est de simuler des utilisateurs afin de
+ Le propos de Tsung est de simuler des utilisateurs afin de
tester la mont�e en charge et les performances d'applications
client/serveur (bas�es sur IP). Actuellement, les protocoles
- HTTP et Jabber sont impl�ment�s, et IDX-TSUNAMI est tr�s facilement
+ HTTP et Jabber sont impl�ment�s, et Tsung est tr�s facilement
extensible (voir le fichier doc/Design.txt pour une description
- de l'impl�mentation et des possibilit�s d'extensions). IDX-TSUNAMI
+ de l'impl�mentation et des possibilit�s d'extensions). Tsung
utilise le langage Erlang.
Ce logiciel est capable de simuler plusieurs milliers d'utilisateurs
@@ -54,10 +54,10 @@
ralentir consid�rablement les injecteurs en cas de tr�s forte
charge.
- Voir �galement le site http://tsunami.idealx.org/
+ Voir �galement le site http://tsung.erlang-projects.org/
NEW: Un manuel utilisateur est maintenant disponible en anglais:
- http://tsunami.idealx.org/user_manual.html
+ http://tsung.erlang-projects.org/user_manual.html
2. Installation
@@ -67,13 +67,13 @@
- xmerl-0.19 (http://sowap.sourceforge.net/download.html). Un paquet
debian binaire est disponible � l'adresse
- http://tsunami.idealx.org/dist/
+ http://tsung.erlang-projects.org/dist/
- le module extended regexp est utilis� pour les variables
dynamiques: gregexp.erl est disponible �
http://www.cellicium.com/erlang/contribs/ . Ce module est
inclus dans les distributions sources et binaires de
- IDX-Tsunami. Ce module est diffus� en license EPL .
+ tsung. Ce module est diffus� en license EPL .
- gnuplot et perl5 (optionel, utilis� pour les sorties graphiques du script
analyse_msg.pl). Le Template Toolkit est utilis� pour les rapports en HTML
@@ -90,18 +90,18 @@
make install
Comment l'utiliser:
- 1a/ �diter un fichier ~/.idx-tsunami/idx-tsunami.xml (toutes les
+ 1a/ �diter un fichier ~/.tsung/tsung.xml (toutes les
options sont d�crites en commentaires dans le fichier d'exemple
- /usr/share/doc/idx-tsunami/examples/idx-tsunami.xml).
+ /usr/share/doc/tsung/examples/tsung.xml).
1b/ Lire le fichier doc/Jabber.txt pour des informations sp�cifiques �
Jabber.
- 2/ utilisez le script "idx-tsunami --start" pour d�marrer le
- test de charge (man idx-tsunami pour avoir les options disponibles)
+ 2/ utilisez le script "tsung --start" pour d�marrer le
+ test de charge (man tsung pour avoir les options disponibles)
- 3/ Lorsque c'est termin� (idx-tsunami --stop pour forcer l'arr�t), le
- script analyse_msg.pl (/usr/lib/idx-tsunami/bin/analyse_msg.pl)
+ 3/ Lorsque c'est termin� (tsung --stop pour forcer l'arr�t), le
+ script analyse_msg.pl (/usr/lib/tsung/bin/analyse_msg.pl)
g�n�re une synth�se des temps de r�ponses;
ce script peut �galement g�n�rer des graphes avec l'option --plot.
@@ -110,7 +110,7 @@
avec les options --stats and --plot option. Le script va
g�n�rer des graphes au format postscript en utilisant
gnuplot. L'option --stats requiert en argement le nomdu fichier
- de log, par d�faut 'idx-tsunami.log-YYYY:MM:DD-HH:mm'
+ de log, par d�faut 'tsung.log-YYYY:MM:DD-HH:mm'
Les mesures suivantes sont disponibles:
- response_time (temps de r�ponse pour chaque requ�te)
@@ -132,19 +132,19 @@
Depuis la version v1.0.beta3, un rapport HTML peut �tre g�n�rer
en utilisant l'option --html. Ceci utilise le Template
Toolkit. Le r�pertoire contenenant les templates est
- ~/idx-tsunami/templates ou /usr/share/idx-tsunami/template ou
+ ~/tsung/templates ou /usr/share/tsung/template ou
encore peut �tre configur� par --tdir <dir>
- Ex: > cd ~/.idx-tsunami/log/2004YYYY-XX:XX
- > analyse_msg.pl --stats idx-tsunami.log --plot --html
+ Ex: > cd ~/.tsung/log/2004YYYY-XX:XX
+ > analyse_msg.pl --stats tsung.log --plot --html
4/ Pour utiliser le proxy enregistreur de sessions HTTP depuis un
navigateur, il faut d'abord d�marrer le proxy avec la commande
- 'idx-tsunami recorder'. Celui-ci d�mmare le proxy qui �coute sur le
+ 'tsung recorder'. Celui-ci d�mmare le proxy qui �coute sur le
port 8090. Il suffit ensuite de param�trer le navigateur pour
utiliser ce proxy. Toutes les requ�tes et les 'thinktimes' seront
enregistr�es dans un fichier directement au format XML. Une fois
- termin�, lancer la commande 'idx-tsunami stop_recorder'.
+ termin�, lancer la commande 'tsung stop_recorder'.
View
50 Makefile.in
@@ -59,18 +59,18 @@ endif
# installation path
BINDIR = $(bindir)
-LIBDIR = $(libdir)/idx-tsunami/bin/
-CONFDIR = $(datadir)/doc/idx-tsunami/examples
-SHARE_DIR = $(datadir)/idx-tsunami/
+LIBDIR = $(libdir)/tsung/bin/
+CONFDIR = $(datadir)/doc/tsung/examples
+SHARE_DIR = $(datadir)/tsung/
TEMPLATES_DIR = $(datadir)/$(TEMPLATES_SUBDIR)
MAN_DIR = $(datadir)/man/man1/
-DOC_DIR = $(datadir)/doc/idx-tsunami
+DOC_DIR = $(datadir)/doc/tsung
ERLANG_LIB_DIR = $(libdir)/erlang/lib
-APPLICATION = tsunami
-CONTROLLER_APPLICATION = tsunami_controller
-RECORDER_APPLICATION = tsunami_recorder
+APPLICATION = tsung
+CONTROLLER_APPLICATION = tsung_controller
+RECORDER_APPLICATION = tsung_recorder
RECORDER_TARGETDIR = $(ERLANG_LIB_DIR)/$(RECORDER_APPLICATION)-$(VERSION)
CONTROLLER_TARGETDIR = $(ERLANG_LIB_DIR)/$(CONTROLLER_APPLICATION)-$(VERSION)
@@ -96,7 +96,7 @@ CONTROLLER_TARGET = $(addsuffix .beam, $(basename \
$(addprefix $(EBIN)/, $(notdir $(CONTROLLER_SRC)))))
RECORDER_TARGET = $(addsuffix .beam, $(basename \
$(addprefix $(EBIN)/, $(notdir $(RECORDER_SRC)))))
-DEBIAN = debian/changelog debian/control debian/compat debian/copyright debian/docs debian/idx-tsunami.dirs debian/rules
+DEBIAN = debian/changelog debian/control debian/compat debian/copyright debian/docs debian/tsung.dirs debian/rules
SRC_APPFILES = $(ESRC)/$(APPLICATION)/$(APPLICATION).app.src $(ESRC)/$(APPLICATION)/$(APPLICATION).rel.src
CONTROLLER_SRC_APPFILES = $(ESRC)/$(CONTROLLER_APPLICATION)/$(CONTROLLER_APPLICATION).app.src $(ESRC)/$(CONTROLLER_APPLICATION)/$(CONTROLLER_APPLICATION).rel.src
@@ -108,11 +108,11 @@ TGT_APPFILES_P = priv/$(APPLICATION)*
RECORDER_TGT_APPFILES_P = priv/$(RECORDER_APPLICATION)*
CONTROLLER_TGT_APPFILES_P = priv/$(CONTROLLER_APPLICATION)*
-SCRIPT = $(BINDIR)/idx-tsunami
+SCRIPT = $(BINDIR)/tsung
PWD = $(shell pwd)
BUILD_OPTIONS = '[{systools, \
[{variables,[ \
- {"TSUNAMIPATH", "$(PWD)/temp/"}] \
+ {"TSUNGPATH", "$(PWD)/temp/"}] \
}]}, \
{sh_script, none}, \
{make_app, true }, {make_rel, true}].'
@@ -121,14 +121,14 @@ BUILD_OPTIONS_DOT = $(subst $(PWD)/temp/,./,$(BUILD_OPTIONS))
BUILD_OPTIONS_FILE = ./BUILD_OPTIONS
-DIST_COMMON=Makefile.in $(CONFFILE_SRC) $(PERL_SCRIPTS_SRC) idx-tsunami.sh.in idx-tsunami.spec.in
+DIST_COMMON=Makefile.in $(CONFFILE_SRC) $(PERL_SCRIPTS_SRC) tsung.sh.in tsung.spec.in
.PHONY: doc
-idx-tsunami: Makefile config.status $(PERL_SCRIPTS) idx-tsunami.sh idx-tsunami.spec $(TARGET) $(RECORDER_TARGET) $(CONTROLLER_TARGET)
+tsung: Makefile config.status $(PERL_SCRIPTS) tsung.sh tsung.spec $(TARGET) $(RECORDER_TARGET) $(CONTROLLER_TARGET)
-all: clean idx-tsunami
+all: clean tsung
debug:
$(MAKE) TYPE=debug
@@ -136,7 +136,7 @@ debug:
native:
$(MAKE) TYPE=native
-rpm: release idx-tsunami.spec
+rpm: release tsung.spec
rpmbuild -ta $(distdir).tar.gz
validate: $(CONFFILE)
@@ -150,8 +150,8 @@ deb:
clean:
-cd priv && rm -f $(shell ls priv | grep -v builder\.erl| grep -v CVS) && cd ..
-rm -f $(TARGET) $(TMP) $(BUILD_OPTIONS_FILE) builder.beam
- -rm -f $(TGT_APPFILES) idx-tsunami.sh $(PERL_SCRIPTS) $(CONFFILE)
- -rm -f ebin/*.beam idx-tsunami.sh idx-tsunami.spec idx-tsunami.xml
+ -rm -f $(TGT_APPFILES) tsung.sh $(PERL_SCRIPTS) $(CONFFILE)
+ -rm -f ebin/*.beam tsung.sh tsung.spec tsung.xml
-make -C doc clean
install: doc boot install_recorder install_controller $(CONFFILE)
@@ -176,13 +176,13 @@ install: doc boot install_recorder install_controller $(CONFFILE)
# install the man page & user's manual
install -d $(MAN_DIR)
- install doc/idx-tsunami.1 $(MAN_DIR)
+ install doc/tsung.1 $(MAN_DIR)
install -d $(DOC_DIR)/images
install $(USERMANUAL) $(DOC_DIR)
install $(USERMANUAL_IMG) $(DOC_DIR)/images
# create startup script
- install idx-tsunami.sh $(SCRIPT)
+ install tsung.sh $(SCRIPT)
install $(PERL_SCRIPTS) $(LIBDIR)/
install -d $(CONFDIR)
@@ -224,9 +224,9 @@ install_controller:
uninstall:
rm -rf $(TARGETDIR) $(SCRIPT)
-boot: idx-tsunami priv/tsunami.boot priv/tsunami_recorder.boot priv/tsunami_controller.boot
+boot: tsung priv/tsung.boot priv/tsung_recorder.boot priv/tsung_controller.boot
-priv/tsunami.boot: builder.beam $(SRC_APPFILES)
+priv/tsung.boot: builder.beam $(SRC_APPFILES)
# use builder to make boot file
@rm -rf temp
@mkdir -p temp/lib/$(APPLICATION)-$(VERSION)
@@ -242,7 +242,7 @@ priv/tsunami.boot: builder.beam $(SRC_APPFILES)
)
@rm -rf temp
-priv/tsunami_controller.boot: builder.beam $(CONTROLLER_SRC_APPFILES)
+priv/tsung_controller.boot: builder.beam $(CONTROLLER_SRC_APPFILES)
# use builder to make boot file
@rm -rf temp
@mkdir -p temp/lib/$(CONTROLLER_APPLICATION)-$(VERSION)
@@ -257,7 +257,7 @@ priv/tsunami_controller.boot: builder.beam $(CONTROLLER_SRC_APPFILES)
)
@rm -rf temp
-priv/tsunami_recorder.boot: builder.beam $(RECORDER_SRC_APPFILES)
+priv/tsung_recorder.boot: builder.beam $(RECORDER_SRC_APPFILES)
# use builder to make boot file
@rm -rf temp
@mkdir -p temp/lib/$(RECORDER_APPLICATION)-$(VERSION)
@@ -298,7 +298,7 @@ configure: configure.in $(CONFIGURE_DEPENDENCIES)
doc:
make -C doc
-release: Makefile idx-tsunami.spec
+release: Makefile tsung.spec
rm -fr $(distdir)
mkdir -p $(distdir)
tar zcf tmp.tgz $(SRC) $(SRC_APPFILES) $(INC_FILES) \
@@ -307,10 +307,10 @@ release: Makefile idx-tsunami.spec
doc/*.erl doc/*.txt doc/*.fig doc/*.png doc/Makefile doc/*.sgml \
$(USERMANUAL) $(USERMANUAL_SRC) $(USERMANUAL_IMG) $(DTD) \
COPYING README LISEZMOI TODO $(CONFFILE_SRC) \
- priv/builder.erl idx-tsunami.sh.in vsn.mk \
+ priv/builder.erl tsung.sh.in vsn.mk \
$(DEBIAN) $(PERL_SCRIPTS_SRC) CONTRIBUTORS CHANGES \
configure configure.in config.guess config.sub Makefile.in \
- install-sh idx-tsunami.spec.in idx-tsunami.spec
+ install-sh tsung.spec.in tsung.spec
tar -C $(distdir) -zxf tmp.tgz
mkdir $(distdir)/ebin
tar zvcf $(distdir).tar.gz $(distdir)
View
6 README
@@ -1,6 +1,6 @@
# $Id$
- IDX-TSUNAMI README
+ tsung README
1. Introduction
@@ -12,12 +12,12 @@
1.2. What This Package Is
- The purpose of IDX-TSUNAMI is to simulate users in order to test
+ The purpose of tsung is to simulate users in order to test
the scalability and performances of IP based client/server
applications.
A User's manual is available :
- http://tsunami.idealx.org/user_manual.html
+ http://tsung.erlang-projects.org/user_manual.html
1.3. Problems/Bugs
View
2  config.guess
@@ -1095,7 +1095,7 @@ EOF
mc68030:UNIX_System_V:4.*:*)
echo m68k-atari-sysv4
exit 0 ;;
- TSUNAMI:LynxOS:2.*:*)
+ tsung:LynxOS:2.*:*)
echo sparc-unknown-lynxos${UNAME_RELEASE}
exit 0 ;;
rs6000:LynxOS:2.*:*)
View
34 configure
@@ -1,6 +1,6 @@
#! /bin/sh
# Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.59 for idx-tsunami 1.1.0.
+# Generated by GNU Autoconf 2.59 for tsung 1.1.0.
#
# Report bugs to <idx-tsunami@lists.IDEALX.org>.
#
@@ -267,13 +267,13 @@ SHELL=${CONFIG_SHELL-/bin/sh}
: ${ac_max_here_lines=38}
# Identity of this package.
-PACKAGE_NAME='idx-tsunami'
-PACKAGE_TARNAME='idx-tsunami'
+PACKAGE_NAME='tsung'
+PACKAGE_TARNAME='tsung'
PACKAGE_VERSION='1.1.0'
-PACKAGE_STRING='idx-tsunami 1.1.0'
+PACKAGE_STRING='tsung 1.1.0'
PACKAGE_BUGREPORT='idx-tsunami@lists.IDEALX.org'
-ac_unique_file="src/tsunami/tsunami.erl"
+ac_unique_file="src/tsung/tsung.erl"
ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS CONFIG_STATUS_DEPENDENCIES CONFIGURE_DEPENDENCIES SED ERLC ac_pt_ERLC ERL ac_pt_ERL ac_prefix_program ERL_OPTS ERLANG_XMERL_DIR ERLDIR DTD TEMPLATES_SUBDIR SET_MAKE INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA LIBOBJS LTLIBOBJS'
ac_subst_files=''
@@ -723,7 +723,7 @@ if test "$ac_init_help" = "long"; then
# Omit some internal or obsolete options to make the list less imposing.
# This message is too long to be a string in the A/UX 3.1 sh.
cat <<_ACEOF
-\`configure' configures idx-tsunami 1.1.0 to adapt to many kinds of systems.
+\`configure' configures tsung 1.1.0 to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]...
@@ -780,7 +780,7 @@ fi
if test -n "$ac_init_help"; then
case $ac_init_help in
- short | recursive ) echo "Configuration of idx-tsunami 1.1.0:";;
+ short | recursive ) echo "Configuration of tsung 1.1.0:";;
esac
cat <<\_ACEOF
@@ -885,7 +885,7 @@ fi
test -n "$ac_init_help" && exit 0
if $ac_init_version; then
cat <<\_ACEOF
-idx-tsunami configure 1.1.0
+tsung configure 1.1.0
generated by GNU Autoconf 2.59
Copyright (C) 2003 Free Software Foundation, Inc.
@@ -899,7 +899,7 @@ cat >&5 <<_ACEOF
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
-It was created by idx-tsunami $as_me 1.1.0, which was
+It was created by tsung $as_me 1.1.0, which was
generated by GNU Autoconf 2.59. Invocation command line was
$ $0 $@
@@ -1613,9 +1613,9 @@ fi
-DTD=idx-tsunami-1.0.dtd
+DTD=tsung-1.0.dtd
-TEMPLATES_SUBDIR=idx-tsunami/templates
+TEMPLATES_SUBDIR=tsung/templates
echo "$as_me:$LINENO: checking whether ${MAKE-make} sets \$(MAKE)" >&5
@@ -1752,7 +1752,7 @@ test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL}'
test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
- ac_config_files="$ac_config_files Makefile idx-tsunami.spec idx-tsunami.sh examples/*.xml src/analyse_msg.pl src/log2tsunami.pl"
+ ac_config_files="$ac_config_files Makefile tsung.spec tsung.sh examples/*.xml src/analyse_msg.pl src/log2tsung.pl"
cat >confcache <<\_ACEOF
@@ -2148,7 +2148,7 @@ _ASBOX
} >&5
cat >&5 <<_CSEOF
-This file was extended by idx-tsunami $as_me 1.1.0, which was
+This file was extended by tsung $as_me 1.1.0, which was
generated by GNU Autoconf 2.59. Invocation command line was
CONFIG_FILES = $CONFIG_FILES
@@ -2203,7 +2203,7 @@ _ACEOF
cat >>$CONFIG_STATUS <<_ACEOF
ac_cs_version="\\
-idx-tsunami config.status 1.1.0
+tsung config.status 1.1.0
configured by $0, generated by GNU Autoconf 2.59,
with options \\"`echo "$ac_configure_args" | sed 's/[\\""\`\$]/\\\\&/g'`\\"
@@ -2307,11 +2307,11 @@ do
case "$ac_config_target" in
# Handling of arguments.
"Makefile" ) CONFIG_FILES="$CONFIG_FILES Makefile" ;;
- "idx-tsunami.spec" ) CONFIG_FILES="$CONFIG_FILES idx-tsunami.spec" ;;
- "idx-tsunami.sh" ) CONFIG_FILES="$CONFIG_FILES idx-tsunami.sh" ;;
+ "tsung.spec" ) CONFIG_FILES="$CONFIG_FILES tsung.spec" ;;
+ "tsung.sh" ) CONFIG_FILES="$CONFIG_FILES tsung.sh" ;;
"examples/*.xml" ) CONFIG_FILES="$CONFIG_FILES examples/*.xml" ;;
"src/analyse_msg.pl" ) CONFIG_FILES="$CONFIG_FILES src/analyse_msg.pl" ;;
- "src/log2tsunami.pl" ) CONFIG_FILES="$CONFIG_FILES src/log2tsunami.pl" ;;
+ "src/log2tsung.pl" ) CONFIG_FILES="$CONFIG_FILES src/log2tsung.pl" ;;
*) { { echo "$as_me:$LINENO: error: invalid argument: $ac_config_target" >&5
echo "$as_me: error: invalid argument: $ac_config_target" >&2;}
{ (exit 1); exit 1; }; };;
View
10 configure.in
@@ -1,8 +1,8 @@
DNA define([AC_CACHE_LOAD], )dnl
dnl define([AC_CACHE_SAVE], )dnl
-AC_INIT([idx-tsunami], m4_normalize(m4_include([vsn.mk])),[idx-tsunami@lists.IDEALX.org])
-AC_CONFIG_SRCDIR(src/tsunami/tsunami.erl)
+AC_INIT([tsung], m4_normalize(m4_include([vsn.mk])),[idx-tsunami@lists.IDEALX.org])
+AC_CONFIG_SRCDIR(src/tsung/tsung.erl)
dnl AM_INIT_AUTOMAKE()
AC_SUBST([CONFIG_STATUS_DEPENDENCIES],[vsn.mk])
@@ -92,12 +92,12 @@ AC_SUBST(SED)
AC_SUBST(ERL)
AC_SUBST(ERLC)
AC_SUBST(ERLDIR)
-AC_SUBST(DTD,[idx-tsunami-1.0.dtd])
-AC_SUBST(TEMPLATES_SUBDIR,[idx-tsunami/templates])
+AC_SUBST(DTD,[tsung-1.0.dtd])
+AC_SUBST(TEMPLATES_SUBDIR,[tsung/templates])
AC_PROG_MAKE_SET
AC_PROG_INSTALL
-AC_CONFIG_FILES([Makefile idx-tsunami.spec idx-tsunami.sh examples/*.xml src/analyse_msg.pl src/log2tsunami.pl])
+AC_CONFIG_FILES([Makefile tsung.spec tsung.sh examples/*.xml src/analyse_msg.pl src/log2tsung.pl])
AC_OUTPUT
View
8 debian/control
@@ -1,16 +1,16 @@
-Source: idx-tsunami
+Source: tsung
Section: net
Priority: optional
Maintainer: Nicolas Niclausse <nicolas.niclausse@niclux.org>
Build-Depends: debhelper (>= 4.0.0), erlang (>= 9.2-1), libxmerl-erlang (>= 0.19-1) | erlang (>= 10.b.5-1) , docbook-utils
Standards-Version: 3.6.0
-Package: idx-tsunami
+Package: tsung
Architecture: all
Depends: erlang (>= 9.2-1), libxmerl-erlang (>= 0.19-1) | erlang (>= 10.b.5-1)
Recommends: gnuplot, perl, ssh, libtemplate-perl
Description: A distributed multi-protocol load testing tool.
- IDX-Tsunami is a distributed load testing tool.
+ Tsung is a distributed load testing tool.
It is protocol-independent and can currently be used to stress and
benchmark HTTP and Jabber servers.
It simulates user behaviour using an XML description file, reports
@@ -20,4 +20,4 @@ Description: A distributed multi-protocol load testing tool.
sessions, supports GET and POST methods, Cookies, and Basic
WWW-authentication. It also has support for SSL.
.
- More information is available at http://tsunami.idealx.org/ .
+ More information is available at http://tsung.erlang-projects.org/ .
View
10 debian/copyright
@@ -1,18 +1,18 @@
-This package was debianized by Nicolas Niclausse <nicolas.niclausse@IDEALX.com> on
+This package was debianized by Nicolas Niclausse <nicolas.niclausse@niclux.org> on
Tue, 10 Feb 2004 12:09:23 +0100.
-It was downloaded from http://tsunami.idealx.org/
+It was downloaded from http://tsung.erlang-projects.org/
-Upstream Author(s): Nicolas Niclausse <nicolas.niclausse@IDEALX.com>
+Upstream Author(s): Nicolas Niclausse <nicolas.niclausse@niclux.org>
Copyright:
- IDX-Tsunami is free software; you can redistribute it and/or modify
+ Tsung is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
- IDX-Tsunami is distributed in the hope that it will be useful,
+ Tsung is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
View
4 debian/rules
@@ -43,8 +43,8 @@ install: build
#dh_clean -k
dh_installdirs
- # Add here commands to install the package into debian/idx-tsunami
- make install DESTDIR=$(CURDIR)/debian/idx-tsunami
+ # Add here commands to install the package into debian/tsung
+ make install DESTDIR=$(CURDIR)/debian/tsung
# Build architecture-independent files here.
View
4 debian/tsung.dirs
@@ -1,4 +1,4 @@
usr/bin/
usr/lib/erlang/lib
-usr/lib/idx-tsunami/bin
-usr/share/idx-tsunami/templates
+usr/lib/tsung/bin
+usr/share/tsung/templates
View
8 doc/Design.txt
@@ -2,9 +2,9 @@
OTP Supervision tree:
====================
-The application is now split in two (see tsunami-inside.png for an overview):
+The application is now split in two (see tsung-inside.png for an overview):
-** a single controller (tsunami_controller)
+** a single controller (tsung_controller)
* ts_config_server (gen_server). Configuration server. Session's
definitions are kept by the config server.
@@ -22,7 +22,7 @@ The application is now split in two (see tsunami-inside.png for an overview):
* ts_msg_server (gen_server)
* ts_user_server (gen_server) used by jabber_* for unicity of users id
-** several clients (tsunami) Several nodes can be used simultaneously
+** several clients (tsung) Several nodes can be used simultaneously
This application is simpler:
@@ -49,7 +49,7 @@ Main modules:
3/ protocol-specific modules (ts_jabber and ts_http, for
example).
- IDX-TSUNAMI use different types of acknoledgements to determine
+ tsung use different types of acknoledgements to determine
when a the response of a request is over. For each requests, 4
options are possible:
View
6 doc/Design_fr.txt
@@ -2,9 +2,9 @@
Arbre de supervision OTP:
========================
-Tsunami est divis� en deux applications aux sens OTP:
+tsung est divis� en deux applications aux sens OTP:
-** un controlleur unique (tsunami_controller)
+** un controlleur unique (tsung_controller)
* ts_config_server (gen_server). Serveur de configuration server. La
d�finition des sessions est gard� part le serveur de configuration.
@@ -22,7 +22,7 @@ Tsunami est divis
* ts_user_server (gen_server) utilis� par ts_launcher et jabber_*
pour l'unicit� des utilisateurs
-** plusieurs injecteurs (tsunami). Plusieus noeuds peuvent �tre actifs
+** plusieurs injecteurs (tsung). Plusieus noeuds peuvent �tre actifs
simultan�ment
* ts_launcher (gen_fsm) lance les clients simul�s (selon un processus de
View
4 doc/Jabber.txt
@@ -3,14 +3,14 @@ Requirements:
users has to be already registered:
-IDX-TSUNAMI users name : cXX
+tsung users name : cXX
passwd: pasXX
where XX is a integer between 1 and the maximum number of users (say 1000000).
or you can use jabber_register (see below).
-optional parameters: (can be set in idx-tsunami.xml file)
+optional parameters: (can be set in tsung.xml file)
==================
jabber_domain=mydomain.com
View
8 doc/Makefile
@@ -1,7 +1,7 @@
# $Id$
-MANPAGE_SRC = idx-tsunami.1.sgml
-MANPAGE = idx-tsunami.1
+MANPAGE_SRC = tsung.1.sgml
+MANPAGE = tsung.1
TOPDIR=$(HOME)/cvs/projetdoc/common/
IMG_TOPDIR=.
@@ -10,7 +10,7 @@ LOGO_DIR=$(TOPDIR)/logos
FILES=$(wildcard *.tex)
# classe et styles latex
-INCLUDES=idx-shortcuts.sty IDXDOC_light.cls
+INCLUDES=shortcuts.sty IDXDOC_light.cls
# chemin des fichiers de style
STYLE=$(TOPDIR)/styles
@@ -22,7 +22,7 @@ HEVEAOPTS=-fix -I $(STYLE) -exec xxdate.exe -pedantic
LANGUAGE=
# logos
-LOGOS_JPG=logo_idealx.jpg idx-map.jpg
+LOGOS_JPG=logo_idealx.jpg map.jpg
LOGOS_EPS = $(LOGOS_JPG:.jpg=.eps)
##############
View
4 doc/tsung-inside.fig
@@ -125,8 +125,8 @@ Single
2 1 0 1 20 7 50 0 -1 0.000 0 0 -1 1 0 2
1 1 1.00 60.00 120.00
7695 6075 4905 7335
-4 0 47 50 -1 19 24 0.0000 4 285 3465 3015 1125 TSUNAMI-CLIENT1\001
-4 0 40 50 -1 19 24 0.0000 4 285 3465 3060 9855 TSUNAMI-CLIENT2\001
+4 0 47 50 -1 19 24 0.0000 4 285 3465 3015 1125 tsung-CLIENT1\001
+4 0 40 50 -1 19 24 0.0000 4 285 3465 3060 9855 tsung-CLIENT2\001
4 0 40 50 -1 19 24 0.0000 4 285 2550 135 2745 CONTROLLER\001
4 0 -1 50 -1 18 16 0.0000 4 180 1035 9405 3465 CLIENTS\001
4 0 -1 50 -1 18 16 0.0000 4 180 1035 9405 6390 CLIENTS\001
View
31 doc/tsung.1.sgml
@@ -16,12 +16,12 @@
</refentryinfo>
<refmeta>
- <refentrytitle>idx-tsunami</refentrytitle>
+ <refentrytitle>tsung</refentrytitle>
<manvolnum>1</manvolnum>
</refmeta>
<refnamediv>
- <refname>idx-tsunami</refname>
+ <refname>tsung</refname>
<refpurpose>
A distributed multi-protocol load testing tool.
</refpurpose>
@@ -29,10 +29,11 @@ A distributed multi-protocol load testing tool.
<refsynopsisdiv>
<cmdsynopsis>
- <command>idx-tsunami</command>
+ <command>tsung</command>
<arg><option>-f</option> configuration file</arg>
<arg><option>-l</option> log file</arg>
<arg><option>-r</option> command</arg>
+ <arg><option>-p</option> plugin</arg> (recorder only)
<arg>start|stop|restart|debug|status|recorder|stop_recorder</arg>
</cmdsynopsis>
</refsynopsisdiv>
@@ -40,7 +41,7 @@ A distributed multi-protocol load testing tool.
<refsect1>
<title>description</title>
<para>
- <command>IDX-Tsunami</command> is a distributed load testing
+ <command>tsung</command> is a distributed load testing
tool. It is protocol-independent and can currently be used to
stress and benchmark HTTP and Jabber servers.</para>
@@ -55,22 +56,22 @@ A distributed multi-protocol load testing tool.
<para>
An example config file can be found in
- <filename>/usr/share/doc/idx-tsunami/examples/idx-tsunami.xml</filename>.
+ <filename>/usr/share/doc/tsung/examples/tsung.xml</filename>.
</para>
<variablelist>
<varlistentry>
<term><option>start</option></term>
<listitem>
- <para>start idx-tsunami</filename></para>
+ <para>start tsung</filename></para>
</listitem>
<term><option>debug</option></term>
<listitem>
- <para>start idx-tsunami with an erlang shell</filename></para>
+ <para>start tsung with an erlang shell</filename></para>
</listitem>
<term><option>stop</option></term>
<listitem>
- <para>stop idx-tsunami</filename></para>
+ <para>stop tsung</filename></para>
</listitem>
<term><option>recorder</option></term>
<listitem>
@@ -82,7 +83,7 @@ A distributed multi-protocol load testing tool.
</listitem>
<term><option>status</option></term>
<listitem>
- <para>print current status of idx-tsunami</filename></para>
+ <para>print current status of tsung</filename></para>
</listitem>
</varlistentry>
</variablelist>
@@ -90,9 +91,9 @@ A distributed multi-protocol load testing tool.
</refsect1>
<refsect1>
<title>manual</title> <para>A manual should be available at
- <filename>/usr/share/doc/idx-tsunami/user_manual.html</filename>. It
+ <filename>/usr/share/doc/tsung/user_manual.html</filename>. It
is also available online at
- <address>http://tsunami.idealx.org/user_manual.html</address>
+ <address>http://tsung.erlang-projects.org/user_manual.html</address>
</para>
</refsect1>
@@ -102,13 +103,13 @@ A distributed multi-protocol load testing tool.
<varlistentry>
<term><option>-f</option></term>
<listitem>
- <para>specifies the configuration file to use. The default file name is <filename>~/.idx-tsunami/idx-tsunami.xml</filename></para>
+ <para>specifies the configuration file to use. The default file name is <filename>~/.tsung/tsung.xml</filename></para>
</listitem>
</varlistentry>
<varlistentry>
<term><option>-l</option></term>
<listitem>
- <para>specifies the log file to use. The default log file name is <filename>~/idx-tsunami/log/idx-tsunami.log</filename></para>
+ <para>specifies the log file to use. The default log file name is <filename>~/tsung/log/tsung.log</filename></para>
</listitem>
</varlistentry>
</variablelist>
@@ -138,10 +139,10 @@ A distributed multi-protocol load testing tool.
<refsect1>
<title>Authors</title>
<para>
- <command>IDX-Tsunami</command> is written by <author>Nicolas Niclausse</author>
+ <command>Tsung</command> is written by <author>Nicolas Niclausse</author>
<email>nicolas@niclux.org</email>. Contributors list
is available in
- <filename>/usr/share/doc/idx-tsunami/CONTRIBUTORS</filename>
+ <filename>/usr/share/doc/tsung/CONTRIBUTORS</filename>
</refsect1>
</refentry>
View
192 doc/user_manual.html
@@ -1,7 +1,7 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"
"http://www.w3.org/TR/REC-html40/loose.dtd">
<HTML>
-<HEAD><TITLE>IDX-Tsunami User's manual</TITLE>
+<HEAD><TITLE>tsung User's manual</TITLE>
<META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<META name="GENERATOR" content="hevea 1.07">
@@ -60,7 +60,7 @@
-<H1 ALIGN=center>IDX-Tsunami User's manual</H1>
+<H1 ALIGN=center>tsung User's manual</H1>
<DIV ALIGN=center>
@@ -77,7 +77,7 @@ <H1 ALIGN=center>IDX-Tsunami User's manual</H1>
<BR>
<DIV ALIGN=center>
<TABLE BORDER=1 CELLSPACING=0 CELLPADDING=1>
-<TR><TD VALIGN=top ALIGN=left><I>IDX-Tsunami user's manual</I></TD>
+<TR><TD VALIGN=top ALIGN=left><I>tsung user's manual</I></TD>
</TR></TABLE>
</DIV>
@@ -88,13 +88,13 @@ <H1 ALIGN=center>IDX-Tsunami User's manual</H1>
<UL><LI>
<A HREF="#htoc1">1&nbsp;&nbsp;Introduction</A>
<UL><LI>
-<A HREF="#htoc2">1.1&nbsp;&nbsp;What is IDX-Tsunami ?</A>
-<LI><A HREF="#htoc3">1.2&nbsp;&nbsp;What is Erlang and why is it important for IDX-Tsunami ?</A>
-<LI><A HREF="#htoc4">1.3&nbsp;&nbsp;IDX-Tsunami background</A>
+<A HREF="#htoc2">1.1&nbsp;&nbsp;What is tsung ?</A>
+<LI><A HREF="#htoc3">1.2&nbsp;&nbsp;What is Erlang and why is it important for tsung ?</A>
+<LI><A HREF="#htoc4">1.3&nbsp;&nbsp;tsung background</A>
</UL>
<LI><A HREF="#htoc5">2&nbsp;&nbsp;Features</A>
<UL><LI>
-<A HREF="#htoc6">2.1&nbsp;&nbsp;IDX-Tsunami main features</A>
+<A HREF="#htoc6">2.1&nbsp;&nbsp;tsung main features</A>
<LI><A HREF="#htoc7">2.2&nbsp;&nbsp;HTTP related features</A>
<LI><A HREF="#htoc8">2.3&nbsp;&nbsp;Jabber related features</A>
<LI><A HREF="#htoc9">2.4&nbsp;&nbsp;Complete reports set</A>
@@ -113,7 +113,7 @@ <H1 ALIGN=center>IDX-Tsunami User's manual</H1>
<LI><A HREF="#htoc18">4.2&nbsp;&nbsp;benchmarking a proxy server</A>
</UL>
<LI><A HREF="#htoc19">5&nbsp;&nbsp;Jabber benchmark approach</A>
-<LI><A HREF="#htoc20">6&nbsp;&nbsp;Understanding idx-tsunami.xml configuration file</A>
+<LI><A HREF="#htoc20">6&nbsp;&nbsp;Understanding tsung.xml configuration file</A>
<UL><LI>
<A HREF="#htoc21">6.1&nbsp;&nbsp;File structure</A>
<LI><A HREF="#htoc22">6.2&nbsp;&nbsp;Clients and server</A>
@@ -138,17 +138,17 @@ <H1 ALIGN=center>IDX-Tsunami User's manual</H1>
<A HREF="#htoc35">7.1&nbsp;&nbsp;Available stats</A>
<LI><A HREF="#htoc36">7.2&nbsp;&nbsp;Design</A>
<LI><A HREF="#htoc37">7.3&nbsp;&nbsp;Generating the report</A>
-<LI><A HREF="#htoc38">7.4&nbsp;&nbsp;Tsunami summary</A>
+<LI><A HREF="#htoc38">7.4&nbsp;&nbsp;tsung summary</A>
<LI><A HREF="#htoc39">7.5&nbsp;&nbsp;Graphical overview</A>
</UL>
<LI><A HREF="#htoc40">8&nbsp;&nbsp;References</A>
<LI><A HREF="#htoc41">9&nbsp;&nbsp;Acknowledgments</A>
<LI><A HREF="#htoc42">A&nbsp;&nbsp;Frequently Asked Questions</A>
<UL><LI>
-<A HREF="#htoc43">A.1&nbsp;&nbsp;IDX-tsunami crashes when I start it </A>
-<LI><A HREF="#htoc44">A.2&nbsp;&nbsp;IDX-tsunami still doesn't start ...</A>
-<LI><A HREF="#htoc45">A.3&nbsp;&nbsp;IDX-tsunami still crashes/fails when I start it !</A>
-<LI><A HREF="#htoc46">A.4&nbsp;&nbsp;What is the format of the stats file idx-tsunami.log ?</A>
+<A HREF="#htoc43">A.1&nbsp;&nbsp;tsung crashes when I start it </A>
+<LI><A HREF="#htoc44">A.2&nbsp;&nbsp;tsung still doesn't start ...</A>
+<LI><A HREF="#htoc45">A.3&nbsp;&nbsp;tsung still crashes/fails when I start it !</A>
+<LI><A HREF="#htoc46">A.4&nbsp;&nbsp;What is the format of the stats file tsung.log ?</A>
<LI><A HREF="#htoc47">A.5&nbsp;&nbsp;How can I specify the number of concurrent users ?</A>
<LI><A HREF="#htoc48">A.6&nbsp;&nbsp;SNMP monitoring doesn't work ?!</A>
</UL>
@@ -158,30 +158,30 @@ <H1 ALIGN=center>IDX-Tsunami User's manual</H1>
<H2><A NAME="htoc1">1</A>&nbsp;&nbsp;Introduction</H2><!--SEC END -->
-<!--TOC subsection What is IDX-Tsunami ?-->
+<!--TOC subsection What is tsung ?-->
-<H3><A NAME="htoc2">1.1</A>&nbsp;&nbsp;What is IDX-Tsunami ?</H3><!--SEC END -->
+<H3><A NAME="htoc2">1.1</A>&nbsp;&nbsp;What is tsung ?</H3><!--SEC END -->
-<EM>IDX-Tsunami</EM> is a distributed load testing tool. It is
+<EM>tsung</EM> is a distributed load testing tool. It is
protocol-independent and can currently be used to stress HTTP, SOAP
and Jabber servers.<BR>
<BR>
It is distributed under the GNU General Public License version 2.<BR>
<BR>
-<!--TOC subsection What is Erlang and why is it important for IDX-Tsunami ?-->
+<!--TOC subsection What is Erlang and why is it important for tsung ?-->
-<H3><A NAME="htoc3">1.2</A>&nbsp;&nbsp;What is Erlang and why is it important for IDX-Tsunami ?</H3><!--SEC END -->
+<H3><A NAME="htoc3">1.2</A>&nbsp;&nbsp;What is Erlang and why is it important for tsung ?</H3><!--SEC END -->
-<EM>IDX-Tsunami's</EM> main strength is its ability to simulate a huge number of
+<EM>tsung's</EM> main strength is its ability to simulate a huge number of
simultaneous user from a single CPU. When used on cluster you can
generate a really impressive load on a server with a modest cluster,
easy to set-up and to maintain.<BR>
<BR>
-<EM>IDX-Tsunami</EM> is developed in Erlang and this is where the power
-of <EM>IDX-Tsunami</EM> resides.<BR>
+<EM>tsung</EM> is developed in Erlang and this is where the power
+of <EM>tsung</EM> resides.<BR>
<BR>
Erlang is a <EM>concurrency-oriented</EM> programming language.
-Tsunami is based on the Erlang OTP (Open Transaction Platform) and
+tsung is based on the Erlang OTP (Open Transaction Platform) and
inherits several characteristics from Erlang:
<UL><LI>
<EM>Performance</EM>: Erlang has been made to support hundred thousands
@@ -190,18 +190,18 @@ <H1 ALIGN=center>IDX-Tsunami User's manual</H1>
distributed, promoting the idea of process's location transparency.
<LI><EM>Fault-tolerance</EM>:Erlang has been built to develop robust,
fault-tolerant systems. As such, wrong answer sent from the server
-to <EM>IDX-Tsunami</EM> does not make the whole running benchmark crash.
+to <EM>tsung</EM> does not make the whole running benchmark crash.
</UL>
More informations on Erlang on <A HREF="http://www.erlang.org"><TT>http://www.erlang.org</TT></A> and
<A HREF="http://www.erlang-projects.org/"><TT>http://www.erlang-projects.org/</TT></A><BR>
<BR>
-<!--TOC subsection IDX-Tsunami background-->
+<!--TOC subsection tsung background-->
-<H3><A NAME="htoc4">1.3</A>&nbsp;&nbsp;IDX-Tsunami background</H3><!--SEC END -->
+<H3><A NAME="htoc4">1.3</A>&nbsp;&nbsp;tsung background</H3><!--SEC END -->
History:
<UL><LI>
-<EM>IDX-Tsunami</EM> is being developed since 2001
+<EM>tsung</EM> is being developed since 2001
<LI>It is an industrial strength implementation of a <EM>stochastic model</EM>
for real users simulation. User events distribution is based on a
Poisson Process. More information on this topic in:<BR>
@@ -214,16 +214,16 @@ <H1 ALIGN=center>IDX-Tsunami User's manual</H1>
research prototype (Web trAffic GeneratOr and beNchmark). WAGON was
used in the <A HREF="http://www.vthd.org/"><TT>http://www.vthd.org/</TT></A> project (Very High Broadband
IP/WDM test platform for new generation Internet applications, 2000-2004).</UL>
-<EM>IDX-Tsunami</EM> has been used for very high load tests:
+<EM>tsung</EM> has been used for very high load tests:
<UL><LI>
<EM>Jabber</EM> protocol: 10 000 simultaneous users.
- <EM>IDX-Tsunami</EM> was running on a 3-computers cluster (CPU
+ <EM>tsung</EM> was running on a 3-computers cluster (CPU
800Mhz)
<LI><EM>HTTP and HTTPS</EM> protocol: 12 000 simultaneous users.
- <EM>IDX-Tsunami</EM> were running on a 4-computers cluster. The
+ <EM>tsung</EM> were running on a 4-computers cluster. The
tested platform reached 3 000 requests per second.
</UL>
-<EM>IDX-Tsunami</EM> has been used at:
+<EM>tsung</EM> has been used at:
<UL><LI>
<EM>DGI</EM> (Direction Générale des impôts): French finance ministry
<LI><EM>Cap Gemini Ernst &amp; Young</EM>
@@ -235,19 +235,19 @@ <H1 ALIGN=center>IDX-Tsunami User's manual</H1>
<H2><A NAME="htoc5">2</A>&nbsp;&nbsp;Features</H2><!--SEC END -->
-<!--TOC subsection IDX-Tsunami main features-->
+<!--TOC subsection tsung main features-->
-<H3><A NAME="htoc6">2.1</A>&nbsp;&nbsp;IDX-Tsunami main features</H3><!--SEC END -->
+<H3><A NAME="htoc6">2.1</A>&nbsp;&nbsp;tsung main features</H3><!--SEC END -->
<UL><LI>
-<EM>High Performance</EM>: <EM>IDX-Tsunami</EM> can simulate a
+<EM>High Performance</EM>: <EM>tsung</EM> can simulate a
huge number of simultaneous users per physical computer: It can
simulates thousands of users on a single CPU (Note: a simulated user
is not always active: it can be idle during a <TT>thinktime</TT>
period). Traditional injection tools can hardly go further than a
few hundreds (Hint: if all you want to do is requesting a single URL
in a loop, use <EM>ab</EM>; but if you want to build complex
- scenarios with extended reports, <EM>IDX-Tsunami</EM> is for you).
+ scenarios with extended reports, <EM>tsung</EM> is for you).
<LI><EM>Distributed</EM>: the load can be distributed on a cluster of
client machines
<LI><EM>Multi-Protocols</EM> using a plug-in system: HTTP (both standard
@@ -260,7 +260,7 @@ <H1 ALIGN=center>IDX-Tsunami User's manual</H1>
agents on remote servers or <EM>SNMP</EM>
<LI><EM>XML configuration system</EM>: complex user's scenarios are written
in XML. Scenarios can be written with a simple browser using the
- tsunami recorder (for HTTP only).
+ tsung recorder (for HTTP only).
<LI><EM>Dynamic scenarios</EM>: You can get dynamic data from the
server under load (without writing any code) and re-inject it in
subsequent requests.
@@ -301,8 +301,8 @@ <H1 ALIGN=center>IDX-Tsunami User's manual</H1>
<H3><A NAME="htoc9">2.4</A>&nbsp;&nbsp;Complete reports set</H3><!--SEC END -->
-Measures and statistics produced by Tsunami are extremely feature-full.
-They are all represented as a graphic. <EM>IDX-Tsunami</EM> produces
+Measures and statistics produced by tsung are extremely feature-full.
+They are all represented as a graphic. <EM>tsung</EM> produces
statistics regarding:
<UL><LI>
<EM>Performance</EM>: response time, connection time, decomposition
@@ -310,11 +310,11 @@ <H1 ALIGN=center>IDX-Tsunami User's manual</H1>
per second
<LI><EM>Errors</EM>: Statistics on page return code to trace errors
<LI><EM>Target server behaviour</EM>: An Erlang agent can gather information
-from the target server(s). Tsunami produces graphs for CPU and memory
+from the target server(s). tsung produces graphs for CPU and memory
consumption and network traffic. SNMP is also supported.
</UL>
-Note that <EM>IDX-Tsunami</EM> takes care of the synchronization process
+Note that <EM>tsung</EM> takes care of the synchronization process
by itself. Gathered statistics are «synchronized».<BR>
<BR>
It is possible to generate graphs during the benchmark as statistics
@@ -324,14 +324,14 @@ <H1 ALIGN=center>IDX-Tsunami User's manual</H1>
<H3><A NAME="htoc10">2.5</A>&nbsp;&nbsp;Highlights</H3><!--SEC END -->
-<EM>IDX-Tsunami</EM> has several advantages over other injection tools:
+<EM>tsung</EM> has several advantages over other injection tools:
<UL><LI>
<EM>High performance</EM> and <EM>distributed benchmark</EM>: You
- can use IDX-Tsunami to simulate tens of thousands of virtual users.
+ can use tsung to simulate tens of thousands of virtual users.
<LI><EM>Ease of use</EM>: The hard work is already done for all supported
protocol. No need to write complex scripts. Dynamic scenarios only
requires small trivial piece of code.
-<LI><EM>Multi-protocol support</EM>: <EM>IDX-Tsunami</EM> is for example one of
+<LI><EM>Multi-protocol support</EM>: <EM>tsung</EM> is for example one of
the only tool to benchmark SOAP applications
<LI><EM>Monitoring</EM> of the target server(s) to analyze the behaviour
and find bottlenecks. For example, it has been used to analyze cluster
@@ -358,11 +358,11 @@ <H1 ALIGN=center>IDX-Tsunami User's manual</H1>
<A HREF="http://www.erlang-projects.org/Public/rpmdeb/rpm_erlang_otp_r9c-2/view"><TT>http://www.erlang-projects.org/Public/rpmdeb/rpm_erlang_otp_r9c-2/view</TT></A>.
<LI>xmerl-0.19 (included in Erlang R10B) (<A HREF="http://sowap.sourceforge.net/download.html"><TT>http://sowap.sourceforge.net/download.html</TT></A>). Debian and Redhat
binaries are provided at
- <A HREF="http://tsunami.idealx.org/dist/"><TT>http://tsunami.idealx.org/dist/</TT></A>
+ <A HREF="http://tsung.idealx.org/dist/"><TT>http://tsung.idealx.org/dist/</TT></A>
<LI>extended regexp module (used for dynamic variables):
gregexp.erl available at
<A HREF="http://www.cellicium.com/erlang/contribs/"><TT>http://www.cellicium.com/erlang/contribs/</TT></A> . The module is
- included in the source and binary distribution of <EM>IDX-Tsunami</EM>. It
+ included in the source and binary distribution of <EM>tsung</EM>. It
is released under the EPL License.
<LI>gnuplot and perl5 (optional; for graphical output with
<TT>analyse_msg.pl</TT> script). The Template Toolkit is used for HTML
@@ -409,21 +409,21 @@ <H1 ALIGN=center>IDX-Tsunami User's manual</H1>
<H3><A NAME="htoc14">3.3</A>&nbsp;&nbsp;Configuration</H3><!--SEC END -->
-The default configuration file is <TT>~/.idx-tsunami/idx-tsunami.xml</TT> (
+The default configuration file is <TT>~/.tsung/tsung.xml</TT> (
there is a sample file
-<TT>/usr/share/doc/idx-tsunami/examples/idx-tsunami.xml</TT>).<BR>
+<TT>/usr/share/doc/tsung/examples/tsung.xml</TT>).<BR>
<BR>
-Log files are saved in <TT>~/.idx-tsunami/log/</TT> . A new subdirectory
+Log files are saved in <TT>~/.tsung/log/</TT> . A new subdirectory
is created for each test using the current date as name
-(<TT>~/.idx-tsunami/log/20040217-09:40</TT> for ex.)<BR>
+(<TT>~/.tsung/log/20040217-09:40</TT> for ex.)<BR>
<BR>
<!--TOC subsection Feedback-->
<H3><A NAME="htoc15">3.4</A>&nbsp;&nbsp;Feedback</H3><!--SEC END -->
-Use the idx-tsunami mailing list (see
-<A HREF="http://lists.idealx.org/info/idx-tsunami"><TT>http://lists.idealx.org/info/idx-tsunami</TT></A>) if you have
-suggestions or questions about <EM>IDX-Tsunami</EM>.<BR>
+Use the tsung mailing list (see
+<A HREF="http://lists.idealx.org/info/tsung"><TT>http://lists.idealx.org/info/tsung</TT></A>) if you have
+suggestions or questions about <EM>tsung</EM>.<BR>
<BR>
<!--TOC section HTTP benchmark approach-->
@@ -434,8 +434,8 @@ <H1 ALIGN=center>IDX-Tsunami User's manual</H1>
<H3><A NAME="htoc17">4.1</A>&nbsp;&nbsp;benchmarking a Web server</H3><!--SEC END -->
<OL type=1><LI>
-Record one or more sessions: start the recorder with: <TT>idx-tsunami
- recorder</TT>, and then configure your browser to use IDX-Tsunami
+Record one or more sessions: start the recorder with: <TT>tsung
+ recorder</TT>, and then configure your browser to use tsung
proxy recorder (the listen port is 8090). A session file will be
created. For HTTPS recording, use <FONT COLOR=purple>http://{</FONT> instead of
<FONT COLOR=purple>https://</FONT> in your browser.
@@ -449,12 +449,12 @@ <H1 ALIGN=center>IDX-Tsunami User's manual</H1>
interarrival time between users and the duration of the phase to estimate
the number of simultaneous users for each given phase.
<LI>Launch benchmark with your first application parameters set-up:
- <TT>idx-tsunami start</TT>
+ <TT>tsung start</TT>
<LI>Wait for the end of the test or stop by hand with
- <TT>idx-tsunami stop</TT> (reports can also be generated during the
+ <TT>tsung stop</TT> (reports can also be generated during the
test (see § <A HREF="#sec:statistics-reports">7</A>) : the statistics are
updated every 10 seconds). For a brief summary of the current
- activity, use <TT>idx-tsunami status</TT>
+ activity, use <TT>tsung status</TT>
<LI>Analyze results, change parameters and relaunch another benchmark
</OL>
<!--TOC subsection benchmarking a proxy server-->
@@ -611,15 +611,15 @@ <H1 ALIGN=center>IDX-Tsunami User's manual</H1>
If you do not specify maxnumber, the global ack will be reset every
<TT>global_number</TT> users
</DL>
-<!--TOC section Understanding idx-tsunami.xml configuration file-->
+<!--TOC section Understanding tsung.xml configuration file-->
-<H2><A NAME="htoc20">6</A>&nbsp;&nbsp;Understanding idx-tsunami.xml configuration file</H2><!--SEC END -->
+<H2><A NAME="htoc20">6</A>&nbsp;&nbsp;Understanding tsung.xml configuration file</H2><!--SEC END -->
<!--TOC subsection File structure-->
<H3><A NAME="htoc21">6.1</A>&nbsp;&nbsp;File structure</H3><!--SEC END -->
-Scenarios are enclosed into idx-tsunami tags:<BR>
+Scenarios are enclosed into tsung tags:<BR>
<TABLE BORDER=0 CELLSPACING=0 CELLPADDING=0>
<TR><TD><TABLE BORDER=0 CELLPADDING=0
CELLSPACING=0>
@@ -635,10 +635,10 @@ <H1 ALIGN=center>IDX-Tsunami User's manual</H1>
<TD><TABLE BORDER=0 CELLPADDING="1" CELLSPACING=0>
<TR><TD><PRE>
&lt;?xml version="1.0"?&gt;
-&lt;!DOCTYPE idx-tsunami SYSTEM "/usr/share/idx-tsunami/idx-tsunami-1.0.dtd" [] &gt;
-&lt;idx-tsunami loglevel="info" dumptraffic="false"&gt;
+&lt;!DOCTYPE tsung SYSTEM "/usr/share/tsung/tsung-1.0.dtd" [] &gt;
+&lt;tsung loglevel="info" dumptraffic="false"&gt;
...
-&lt;/idx-tsunami&gt;
+&lt;/tsung&gt;
</PRE></TD>
</TR></TABLE></TD>
<TD BGCOLOR=black COLSPAN="1"><TABLE CELLSPACING="1" CELLPADDING=0 BORDER=0>
@@ -656,7 +656,7 @@ <H1 ALIGN=center>IDX-Tsunami User's manual</H1>
<H3><A NAME="htoc22">6.2</A>&nbsp;&nbsp;Clients and server</H3><!--SEC END -->
-Scenarios start with clients (IDX-Tsunami cluster) and server definitions:<BR>
+Scenarios start with clients (tsung cluster) and server definitions:<BR>
<TABLE BORDER=0 CELLSPACING=0 CELLPADDING=0>
<TR><TD><TABLE BORDER=0 CELLPADDING=0
CELLSPACING=0>
@@ -702,7 +702,7 @@ <H1 ALIGN=center>IDX-Tsunami User's manual</H1>
1.1.1:</B> IP is not mandatory. If not specified, the default IP will
be used.<BR>
<BR>
-In this example, a second machine is used in the Tsunami cluster,
+In this example, a second machine is used in the tsung cluster,
with a higher weight, and 2 cpus. Two Erlang virtual machines will be
used to take advantage of the number of CPU.<BR>
<BR>
@@ -915,7 +915,7 @@ <H1 ALIGN=center>IDX-Tsunami User's manual</H1>
<H4><A NAME="htoc27">6.5.2</A>&nbsp;&nbsp;Default values: HTTP</H4><!--SEC END -->
For HTTP, you can set the UserAgent values (available since
- Idx-Tsunami 1.1.0), using a frequency for each value (the sum of all
+ tsung 1.1.0), using a frequency for each value (the sum of all
frequencies must be equal to 100)<BR>
<TABLE BORDER=0 CELLSPACING=0 CELLPADDING=0>
<TR><TD><TABLE BORDER=0 CELLPADDING=0
@@ -964,7 +964,7 @@ <H1 ALIGN=center>IDX-Tsunami User's manual</H1>
the requests to execute.<BR>
<BR>
This example shows several features of the HTTP protocol support in
-Tsunami: GET and POST request, basic authentication, transaction for
+tsung: GET and POST request, basic authentication, transaction for
statistics definition, ...<BR>
<TABLE BORDER=0 CELLSPACING=0 CELLPADDING=0>
<TR><TD><TABLE BORDER=0 CELLPADDING=0
@@ -1129,7 +1129,7 @@ <H1 ALIGN=center>IDX-Tsunami User's manual</H1>
variables (<B>Warn: before version 1.1.0, the argument was just the
Pid !</B>).<BR>
<BR>
-Here is an example of use of substitution in a Tsunami scenario:<BR>
+Here is an example of use of substitution in a tsung scenario:<BR>
<TABLE BORDER=0 CELLSPACING=0 CELLPADDING=0>
<TR><TD><TABLE BORDER=0 CELLPADDING=0
CELLSPACING=0>
@@ -1403,7 +1403,7 @@ <H1 ALIGN=center>IDX-Tsunami User's manual</H1>
<TD><TABLE BORDER=0 CELLPADDING="1" CELLSPACING=0>
<TR><TD><PRE>
&lt;request&gt;
- &lt;http url="/testtsunami.html" method="GET" version="1.0"&gt;&lt;/http&gt;
+ &lt;http url="/testtsung.html" method="GET" version="1.0"&gt;&lt;/http&gt;
&lt;dyn_variable name="random_num" &gt;&lt;/dyn_variable&gt;
&lt;/request&gt;
</PRE></TD>
@@ -1472,7 +1472,7 @@ <H1 ALIGN=center>IDX-Tsunami User's manual</H1>
<TD><TABLE BORDER=0 CELLPADDING="1" CELLSPACING=0>
<TR><TD><PRE>
&lt;request&gt;
- &lt;http url="/testtsunami.html" method="GET" version="1.0"&gt;&lt;/http&gt;
+ &lt;http url="/testtsung.html" method="GET" version="1.0"&gt;&lt;/http&gt;
&lt;dyn_variable name="mytitlevar"
regexp="&amp;lt;title&amp;gt;\(.*\)&amp;lt;/title&amp;gt;"/&gt;
&lt;/request&gt;
@@ -1571,7 +1571,7 @@ <H1 ALIGN=center>IDX-Tsunami User's manual</H1>
A bit of explanation on the design and internals of the statistics engine:<BR>
<BR>
-IDX-tsunami was designed to handle thousands of requests/sec, for very
+tsung was designed to handle thousands of requests/sec, for very
long period of times (several hours) so it do not write all data to
the disk (for performance reasons). Instead it computes on the fly an
estimation of the mean and standard variation for each type of data,
@@ -1595,7 +1595,7 @@ <H1 ALIGN=center>IDX-Tsunami User's manual</H1>
<H3><A NAME="htoc37">7.3</A>&nbsp;&nbsp;Generating the report</H3><!--SEC END -->
cd to the log directory of your test (say
-<TT>~/.idx-tsunami/log/20040325-16:33/</TT>) and use the script
+<TT>~/.tsung/log/20040325-16:33/</TT>) and use the script
<TT>analyse_msg.pl</TT>:<BR>
<TABLE BORDER=0 CELLSPACING=0 CELLPADDING=0>
<TR><TD><TABLE BORDER=0 CELLPADDING=0
@@ -1611,7 +1611,7 @@ <H1 ALIGN=center>IDX-Tsunami User's manual</H1>
</TR></TABLE></TD>
<TD><TABLE BORDER=0 CELLPADDING="1" CELLSPACING=0>
<TR><TD><PRE>
-/usr/lib/idx-tsunami/bin/analyse_msg.pl --html --extra --plot
+/usr/lib/tsung/bin/analyse_msg.pl --html --extra --plot
</PRE></TD>
</TR></TABLE></TD>
<TD BGCOLOR=black COLSPAN="1"><TABLE CELLSPACING="1" CELLPADDING=0 BORDER=0>
@@ -1627,13 +1627,13 @@ <H1 ALIGN=center>IDX-Tsunami User's manual</H1>
</TR></TABLE><BR>
(use <FONT COLOR=purple>--help</FONT> to view all available options)<BR>
<BR>
-<!--TOC subsection Tsunami summary-->
+<!--TOC subsection tsung summary-->
-<H3><A NAME="htoc38">7.4</A>&nbsp;&nbsp;Tsunami summary</H3><!--SEC END -->
+<H3><A NAME="htoc38">7.4</A>&nbsp;&nbsp;tsung summary</H3><!--SEC END -->
<BLOCKQUOTE><DIV ALIGN=center><HR WIDTH="80%" SIZE=2></DIV>
<DIV ALIGN=center>
- <IMG SRC="images/tsunami-report.png" ALT="images/tsunami-report.png">
+ <IMG SRC="images/tsung-report.png" ALT="images/tsung-report.png">
</DIV>
<BR>
<DIV ALIGN=center>Figure 1: Report</DIV><BR>
@@ -1646,7 +1646,7 @@ <H1 ALIGN=center>IDX-Tsunami User's manual</H1>
<BLOCKQUOTE><DIV ALIGN=center><HR WIDTH="80%" SIZE=2></DIV>
<DIV ALIGN=center>
- <IMG SRC="images/tsunami-graph.png" ALT="images/tsunami-graph.png">
+ <IMG SRC="images/tsung-graph.png" ALT="images/tsung-graph.png">
</DIV>
<BR>
<DIV ALIGN=center>Figure 2: Graphical output</DIV><BR>
@@ -1658,8 +1658,8 @@ <H1 ALIGN=center>IDX-Tsunami User's manual</H1>
<H2><A NAME="htoc40">8</A>&nbsp;&nbsp;References</H2><!--SEC END -->
<UL><LI>
-<EM>IDX-Tsunami</EM> home page: <A HREF="http://tsunami.idealx.org/"><TT>http://tsunami.idealx.org/</TT></A>
-<LI><EM>IDX-Tsunami</EM> description (French)<SUP><A NAME="text1" HREF="#note1">1</A></SUP>
+<EM>tsung</EM> home page: <A HREF="http://tsung.idealx.org/"><TT>http://tsung.idealx.org/</TT></A>
+<LI><EM>tsung</EM> description (French)<SUP><A NAME="text1" HREF="#note1">1</A></SUP>
<LI>Erlang web site <A HREF="http://www.erlang.org/"><TT>http://www.erlang.org/</TT></A>
<LI>Erlang programmation, Mickaël Rémond, Editions Eyrolles, 2003
<SUP><A NAME="text2" HREF="#note2">2</A></SUP>
@@ -1679,9 +1679,9 @@ <H1 ALIGN=center>IDX-Tsunami User's manual</H1>
<H2><A NAME="htoc42">A</A>&nbsp;&nbsp;Frequently Asked Questions</H2><!--SEC END -->
-<!--TOC subsection IDX-tsunami crashes when I start it -->
+<!--TOC subsection tsung crashes when I start it -->
-<H3><A NAME="htoc43">A.1</A>&nbsp;&nbsp;IDX-tsunami crashes when I start it </H3><!--SEC END -->
+<H3><A NAME="htoc43">A.1</A>&nbsp;&nbsp;tsung crashes when I start it </H3><!--SEC END -->
Does your Erlang system has ssl support enabled ?<BR>
<BR>
@@ -1717,9 +1717,9 @@ <H1 ALIGN=center>IDX-Tsunami User's manual</H1>
</TR></TABLE></TD>
</TR></TABLE></TD>
</TR></TABLE><BR>
-<!--TOC subsection IDX-tsunami still doesn't start ...-->
+<!--TOC subsection tsung still doesn't start ...-->
-<H3><A NAME="htoc44">A.2</A>&nbsp;&nbsp;IDX-tsunami still doesn't start ...</H3><!--SEC END -->
+<H3><A NAME="htoc44">A.2</A>&nbsp;&nbsp;tsung still doesn't start ...</H3><!--SEC END -->
Most of the time, when a crash happened at startup without any traffic
generated, the problem arise because the main Erlang controller node cannot
@@ -1774,7 +1774,7 @@ <H1 ALIGN=center>IDX-Tsunami User's manual</H1>
7,
6,
"negociate"},
- "/home/username/.idx-tsunami/log/20040204-18:32",
+ "/home/username/.tsung/log/20040204-18:32",
undefined,
0,
undefined,
@@ -1797,7 +1797,7 @@ <H1 ALIGN=center>IDX-Tsunami User's manual</H1>
</TR></TABLE></TD>
</TR></TABLE></TD>
</TR></TABLE><BR>
-IDX-Tsunami launches a new erl virtual machine to do the actual
+tsung launches a new erl virtual machine to do the actual
injection even when you have only one machine in the injection
cluster. This is because it needs to by-pass some limit with the number
of open socket from a single process (1024 most of the time). The idea
@@ -1851,7 +1851,7 @@ <H1 ALIGN=center>IDX-Tsunami User's manual</H1>
of your client machine should not refer to this address.<BR>
<BR>
<B>New in 1.1.0</B>: If you don't use the distributed feature of
-Tsunami and have trouble to start a remote beam on a local machine,
+tsung and have trouble to start a remote beam on a local machine,
you can set the <TT>'use_controller_vm'</TT> attribute to true, for ex.:<BR>
<TABLE BORDER=0 CELLSPACING=0 CELLPADDING=0>
<TR><TD><TABLE BORDER=0 CELLPADDING=0
@@ -1922,30 +1922,30 @@ <H1 ALIGN=center>IDX-Tsunami User's manual</H1>
(in SuSE see <TT>/etc/ssh/sshd_config</TT>) and symlink from one of the approved paths
to the erlang executable (thanks to Gordon Guthrie for reporting this).<BR>
<BR>
-<!--TOC subsection IDX-tsunami still crashes/fails when I start it !-->
+<!--TOC subsection tsung still crashes/fails when I start it !-->
-<H3><A NAME="htoc45">A.3</A>&nbsp;&nbsp;IDX-tsunami still crashes/fails when I start it !</H3><!--SEC END -->
+<H3><A NAME="htoc45">A.3</A>&nbsp;&nbsp;tsung still crashes/fails when I start it !</H3><!--SEC END -->
First look at the log file
-<TT>~/.idx-tsunami/log/XXX/tsunami_controller@yourhostname'</TT> to see
+<TT>~/.tsung/log/XXX/tsung_controller@yourhostname'</TT> to see
if there is a problem. <BR>
<BR>
If the file is not created and a crashed dump file is present, maybe
-you are using a binary installation of tsunami not compatible with the
+you are using a binary installation of tsung not compatible with the
version of erlang you used.<BR>
<BR>
-If you see nothing wrong, you can compile <EM>idx-tsunami</EM> with full
+If you see nothing wrong, you can compile <EM>tsung</EM> with full
debugging: recompile with <TT>make debug</TT> , and
don't forget to set the loglevel to "debug" in the XML file.<BR>
<BR>
-To start the debugger or see what happen, start <EM>IDX-Tsunami</EM> with the
+To start the debugger or see what happen, start <EM>tsung</EM> with the
<FONT COLOR=purple>debug</FONT> argument instead of <FONT COLOR=purple>start</FONT>. You will have
-an erlang shell on the <TT>tsunami_controller</TT> node. Use
+an erlang shell on the <TT>tsung_controller</TT> node. Use
<TT>toolbar:start().</TT> to launch the graphical tools provided by
Erlang.
-<!--TOC subsection What is the format of the stats file idx-tsunami.log ?-->
+<!--TOC subsection What is the format of the stats file tsung.log ?-->
-<H3><A NAME="htoc46">A.4</A>&nbsp;&nbsp;What is the format of the stats file idx-tsunami.log ?</H3><!--SEC END -->
+<H3><A NAME="htoc46">A.4</A>&nbsp;&nbsp;What is the format of the stats file tsung.log ?</H3><!--SEC END -->
<BR>
<TABLE BORDER=0 CELLSPACING=0 CELLPADDING=0>
<TR><TD><TABLE BORDER=0 CELLPADDING=0
@@ -2007,9 +2007,9 @@ <H1 ALIGN=center>IDX-Tsunami User's manual</H1>
<H3><A NAME="htoc47">A.5</A>&nbsp;&nbsp;How can I specify the number of concurrent users ?</H3><!--SEC END -->
You can't. But it's on purpose: the load generated by
-<EM>IDX-Tsunami</EM> is dependent on the arrival time between new
+<EM>tsung</EM> is dependent on the arrival time between new
clients. Indeed, once a client has finished his session in
-<EM>idx-tsunami</EM>, it stops. So the number of concurrent users is
+<EM>tsung</EM>, it stops. So the number of concurrent users is
a function of the arrival rate and the mean session duration.<BR>
<BR>
For example, if your web site has 1000 visits/hour, the arrival rate
View
158 doc/user_manual.tex
@@ -8,48 +8,48 @@
\RCS$Date$
\documentclass{IDXDOC-en}
-\usepackage{idx-shortcuts}
+\usepackage{shortcuts}
% --------------------------------------------
% Title
% --------------------------------------------
-\doctitle{IDX-Tsunami User's manual}
+\doctitle{tsung User's manual}
%\addauthor{Nicolas}{Niclausse}{nicolas.niclausse@IDEALX.com}
\doccopyright{IDEALX S.A.S.}
\docversion{\RCSRevision}
\docreldate{\RCSDate}
-\docref{idx-tsunami-user-manual}
+\docref{tsung-user-manual}
\begin{document}
\maketitle
-\Abstract{IDX-Tsunami user's manual}
+\Abstract{tsung user's manual}
\newpage
\tableofcontents
\section{Introduction}
-\subsection{What is IDX-Tsunami ?}
+\subsection{What is tsung ?}
-\program{IDX-Tsunami} is a distributed load testing tool. It is
+\program{tsung} is a distributed load testing tool. It is
protocol-independent and can currently be used to stress HTTP, SOAP
and Jabber servers.
It is distributed under the GNU General Public License version 2.
-\subsection{What is Erlang and why is it important for IDX-Tsunami ?}
+\subsection{What is Erlang and why is it important for tsung ?}
-\program{IDX-Tsunami's} main strength is its ability to simulate a huge number of
+\program{tsung's} main strength is its ability to simulate a huge number of
simultaneous user from a single CPU. When used on cluster you can
generate a really impressive load on a server with a modest cluster,
easy to set-up and to maintain.
-\program{IDX-Tsunami} is developed in Erlang and this is where the power
-of \program{IDX-Tsunami} resides.
+\program{tsung} is developed in Erlang and this is where the power
+of \program{tsung} resides.
\par Erlang is a \emph{concurrency-oriented} programming language.
-Tsunami is based on the Erlang OTP (Open Transaction Platform) and
+tsung is based on the Erlang OTP (Open Transaction Platform) and
inherits several characteristics from Erlang:
\begin{itemize}
@@ -59,18 +59,18 @@ \subsection{What is Erlang and why is it important for IDX-Tsunami ?}
distributed, promoting the idea of process's location transparency.
\item \emph{Fault-tolerance}:Erlang has been built to develop robust,
fault-tolerant systems. As such, wrong answer sent from the server
-to \program{IDX-Tsunami} does not make the whole running benchmark crash.
+to \program{tsung} does not make the whole running benchmark crash.
\end{itemize}
More informations on Erlang on \url{http://www.erlang.org} and
\url{http://www.erlang-projects.org/}
-\subsection{IDX-Tsunami background}
+\subsection{tsung background}
History:
\begin{itemize}
-\item \program{IDX-Tsunami} is being developed since 2001
+\item \program{tsung} is being developed since 2001
\item It is an industrial strength implementation of a \emph{stochastic model}
for real users simulation. User events distribution is based on a
Poisson Process. More information on this topic in:
@@ -86,18 +86,18 @@ \subsection{IDX-Tsunami background}
\end{itemize}
-\program{IDX-Tsunami} has been used for very high load tests:
+\program{tsung} has been used for very high load tests:
\begin{itemize}
\item \emph{Jabber} protocol: 10 000 simultaneous users.
- \program{IDX-Tsunami} was running on a 3-computers cluster (CPU
+ \program{tsung} was running on a 3-computers cluster (CPU
800Mhz)
\item \emph{HTTP and HTTPS} protocol: 12 000 simultaneous users.
- \program{IDX-Tsunami} were running on a 4-computers cluster. The
+ \program{tsung} were running on a 4-computers cluster. The
tested platform reached 3 000 requests per second.
\end{itemize}
-\program{IDX-Tsunami} has been used at:
+\program{tsung} has been used at:
\begin{itemize}
\item \emph{DGI} (Direction Générale des impôts): French finance ministry
@@ -109,17 +109,17 @@ \subsection{IDX-Tsunami background}
\section{Features}
-\subsection{IDX-Tsunami main features}
+\subsection{tsung main features}
\begin{itemize}
-\item \emph{High Performance}: \program{IDX-Tsunami} can simulate a
+\item \emph{High Performance}: \program{tsung} can simulate a
huge number of simultaneous users per physical computer: It can
simulates thousands of users on a single CPU (Note: a simulated user
is not always active: it can be idle during a \varname{thinktime}
period). Traditional injection tools can hardly go further than a
few hundreds (Hint: if all you want to do is requesting a single URL
in a loop, use \program{ab}; but if you want to build complex
- scenarios with extended reports, \program{IDX-Tsunami} is for you).
+ scenarios with extended reports, \program{tsung} is for you).
\item \emph{Distributed}: the load can be distributed on a cluster of
client machines
\item \emph{Multi-Protocols} using a plug-in system: HTTP (both standard
@@ -132,7 +132,7 @@ \subsection{IDX-Tsunami main features}
agents on remote servers or \emph{SNMP}
\item \emph{XML configuration system}: complex user's scenarios are written
in XML. Scenarios can be written with a simple browser using the
- tsunami recorder (for HTTP only).
+ tsung recorder (for HTTP only).
\item \emph{Dynamic scenarios}: You can get dynamic data from the
server under load (without writing any code) and re-inject it in
subsequent requests.
@@ -173,8 +173,8 @@ \subsection{Jabber related features}
\subsection{Complete reports set}
-Measures and statistics produced by Tsunami are extremely feature-full.
-They are all represented as a graphic. \program{IDX-Tsunami} produces
+Measures and statistics produced by tsung are extremely feature-full.
+They are all represented as a graphic. \program{tsung} produces
statistics regarding:
\begin{itemize}
@@ -183,10 +183,10 @@ \subsection{Complete reports set}
per second
\item \emph{Errors}: Statistics on page return code to trace errors
\item \emph{Target server behaviour}: An Erlang agent can gather information
-from the target server(s). Tsunami produces graphs for CPU and memory
+from the target server(s). tsung produces graphs for CPU and memory
consumption and network traffic. SNMP is also supported.
\end{itemize}
-\par Note that \program{IDX-Tsunami} takes care of the synchronization process
+\par Note that \program{tsung} takes care of the synchronization process
by itself. Gathered statistics are «synchronized».
It is possible to generate graphs during the benchmark as statistics
@@ -194,17 +194,17 @@ \subsection{Complete reports set}
\subsection{Highlights}
-\program{IDX-Tsunami} has several advantages over other injection tools:
+\program{tsung} has several advantages over other injection tools:
\begin{itemize}
\item \emph{High performance} and \emph{distributed benchmark}: You
- can use IDX-Tsunami to simulate tens of thousands of virtual users.
+ can use tsung to simulate tens of thousands of virtual users.
\item \emph{Ease of use}: The hard work is already done for all supported
protocol. No need to write complex scripts. Dynamic scenarios only
requires small trivial piece of code.
-% Tsunami scenarii realisation is mostly based on
-\item \emph{Multi-protocol support}: \program{IDX-Tsunami} is for example one of
+% tsung scenarii realisation is mostly based on
+\item \emph{Multi-protocol support}: \program{tsung} is for example one of
the only tool to benchmark SOAP applications
\item \emph{Monitoring} of the target server(s) to analyze the behaviour
and find bottlenecks. For example, it has been used to analyze cluster
@@ -229,14 +229,14 @@ \subsection{Dependencies}
\url{http://www.erlang-projects.org/Public/rpmdeb/rpm_erlang_otp_r9c-2/view}.
\item xmerl-0.19 (included in Erlang R10B) (\url{http://sowap.sourceforge.net/download.html}). Debian and Redhat
binaries are provided at
- \url{http://tsunami.idealx.org/dist/}
+ \url{http://tsung.idealx.org/dist/}
\item extended regexp module (used for dynamic variables):
gregexp.erl available at
\url{http://www.cellicium.com/erlang/contribs/} . The module is
- included in the source and binary distribution of \program{IDX-Tsunami}. It
+ included in the source and binary distribution of \program{tsung}. It
is released under the EPL License.
\item gnuplot and perl5 (optional; for graphical output with
- \command{analyse\_msg.pl} script). The Template Toolkit is used for HTML
+ \command{tsung\_stats.pl} script). The Template Toolkit is used for HTML
reports (see \url{http://template-toolkit.org/})
\item for distributed tests, you need an ssh access to remote
machines without password (use a RSA/DSA key without pass-phrase or
@@ -252,27 +252,27 @@ \subsection{Compilation}
\end{Verbatim}
\subsection{Configuration}
-The default configuration file is \file{~/.idx-tsunami/idx-tsunami.xml} (
+The default configuration file is \file{~/.tsung/tsung.xml} (
there is a sample file
-\file{/usr/share/doc/idx-tsunami/examples/idx-tsunami.xml}).
+\file{/usr/share/doc/tsung/examples/tsung.xml}).
-Log files are saved in \file{~/.idx-tsunami/log/} . A new subdirectory
+Log files are saved in \file{~/.tsung/log/} . A new subdirectory
is created for each test using the current date as name
-(\file{~/.idx-tsunami/log/20040217-09:40} for ex.)
+(\file{~/.tsung/log/20040217-09:40} for ex.)
\subsection{Feedback}
-Use the idx-tsunami mailing list (see
+Use the Tsung mailing list (see
\url{http://lists.idealx.org/info/idx-tsunami}) if you have
-suggestions or questions about \program{IDX-Tsunami}.
+suggestions or questions about \program{Tsung}.
\section{HTTP benchmark approach}
\subsection{benchmarking a Web server}
\begin{enumerate}
-\item Record one or more sessions: start the recorder with: \command{idx-tsunami
- recorder}, and then configure your browser to use IDX-Tsunami
+\item Record one or more sessions: start the recorder with: \command{tsung
+ recorder}, and then configure your browser to use tsung
proxy recorder (the listen port is 8090). A session file will be
created. For HTTPS recording, use \userinput{http://\{} instead of
\userinput{https://} in your browser.
@@ -286,12 +286,12 @@ \subsection{benchmarking a Web server}
interarrival time between users and the duration of the phase to estimate
the number of simultaneous users for each given phase.
\item Launch benchmark with your first application parameters set-up:
- \command{idx-tsunami start}
+ \command{tsung start}
\item Wait for the end of the test or stop by hand with
- \command{idx-tsunami stop} (reports can also be generated during the
+ \command{tsung stop} (reports can also be generated during the
test (see § \ref{sec:statistics-reports}) : the statistics are
updated every 10 seconds). For a brief summary of the current
- activity, use \command{idx-tsunami status}
+ activity, use \command{tsung status}
\item Analyze results, change parameters and relaunch another benchmark
\end{enumerate}
@@ -356,24 +356,24 @@ \section{Jabber benchmark approach}
\varname{global\_number} users
\end{description}
-\section{Understanding idx-tsunami.xml configuration file}
+\section{Understanding tsung.xml configuration file}
\subsection{File structure}
- Scenarios are enclosed into idx-tsunami tags:
+ Scenarios are enclosed into tsung tags:
\begin{Verbatim}
<?xml version="1.0"?>
-<!DOCTYPE idx-tsunami SYSTEM "/usr/share/idx-tsunami/idx-tsunami-1.0.dtd" [] >
-<idx-tsunami loglevel="info" dumptraffic="false">
+<!DOCTYPE tsung SYSTEM "/usr/share/tsung/tsung-1.0.dtd" [] >
+<tsung loglevel="info" dumptraffic="false">
...
-</idx-tsunami>
+</tsung>
\end{Verbatim}
\subsection{Clients and server}
- Scenarios start with clients (IDX-Tsunami cluster) and server definitions:
+ Scenarios start with clients (tsung cluster) and server definitions:
\begin{Verbatim}
<clients>
@@ -396,7 +396,7 @@ \subsection{Clients and server}
1.1.1:} IP is not mandatory. If not specified, the default IP will
be used.
- In this example, a second machine is used in the Tsunami cluster,
+ In this example, a second machine is used in the tsung cluster,
with a higher weight, and 2 cpus. Two Erlang virtual machines will be
used to take advantage of the number of CPU.
@@ -509,7 +509,7 @@ \subsubsection{Default values: Jabber}
\subsubsection{Default values: HTTP}
For HTTP, you can set the UserAgent values (\string{available since
- Idx-Tsunami 1.1.0}), using a frequency for each value (the sum of all
+ tsung 1.1.0}), using a frequency for each value (the sum of all
frequencies must be equal to 100)
\begin{Verbatim}
@@ -532,7 +532,7 @@ \subsubsection{Overview and examples}
the requests to execute.
This example shows several features of the HTTP protocol support in
-Tsunami: GET and POST request, basic authentication, transaction for
+tsung: GET and POST request, basic authentication, transaction for
statistics definition, ...
@@ -649,7 +649,7 @@ \subsubsection{Dynamic substitutions}
-Here is an example of use of substitution in a Tsunami scenario:
+Here is an example of use of substitution in a tsung scenario:
\begin{Verbatim}
<session name="rec20040316-08:47" popularity="100" type="ts_http">
@@ -744,7 +744,7 @@ \subsubsection{Dynamic variables}
with:
\begin{Verbatim}
<request>
- <http url="/testtsunami.html" method="GET" version="1.0"></http>
+ <http url="/testtsung.html" method="GET" version="1.0"></http>
<dyn_variable name="random_num" ></dyn_variable>
</request>
\end{Verbatim}
@@ -767,7 +767,7 @@ \subsubsection{Dynamic variables}
hand, for example to get the title of a HTML page:
\begin{Verbatim}
<request>
- <http url="/testtsunami.html" method="GET" version="1.0"></http>
+ <http url="/testtsung.html" method="GET" version="1.0"></http>
<dyn_variable name="mytitlevar"
regexp="&lt;title&gt;\(.*\)&lt;/title&gt;"/>
</request>
@@ -826,7 +826,7 @@ \subsection{Design}
A bit of explanation on the design and internals of the statistics engine:
-IDX-tsunami was designed to handle thousands of requests/sec, for very
+tsung was designed to handle thousands of requests/sec, for very
long period of times (several hours) so it do not write all data to
the disk (for performance reasons). Instead it computes on the fly an
estimation of the mean and standard variation for each type of data,
@@ -852,19 +852,19 @@ \subsection{Design}
\subsection{Generating the report}
cd to the log directory of your test (say
-\file{~/.idx-tsunami/log/20040325-16:33/}) and use the script
-\command{analyse\_msg.pl}:
+\file{~/.tsung/log/20040325-16:33/}) and use the script
+\command{tsung\_stats.pl}:
\begin{Verbatim}
-/usr/lib/idx-tsunami/bin/analyse_msg.pl --html --extra --plot
+/usr/lib/tsung/bin/tsung_stats.pl --html --extra --plot
\end{Verbatim}
(use \userinput{--help} to view all available options)
-\subsection{Tsunami summary}
+\subsection{tsung summary}
\begin{figure}[htb]
\begin{center}
- \includegraphics[width=0.6\linewidth]{tsunami-report}
+ \includegraphics[width=0.6\linewidth]{tsung-report}
\end{center}
\caption{Report}
\label{fig:report}
@@ -875,7 +875,7 @@ \subsection{Graphical overview}
\begin{figure}[htb]
\begin{center}
- \includegraphics[width=0.6\linewidth]{tsunami-graph}
+ \includegraphics[width=0.6\linewidth]{tsung-graph}
\end{center}
\caption{Graphical output}
\label{fig:graph}
@@ -888,8 +888,8 @@ \subsection{Graphical overview}
\section{References}
\begin{itemize}
-\item \program{IDX-Tsunami} home page: \url{http://tsunami.idealx.org/}
-\item \program{IDX-Tsunami} description (French)\footnote{\url{http://www.erlang-projects.org/Members/mremond/events/dossier_de_presentat/block_10766817551485/file}}
+\item \program{tsung} home page: \url{http://tsung.idealx.org/}
+\item \program{tsung} description (French)\footnote{\url{http://www.erlang-projects.org/Members/mremond/events/dossier_de_presentat/block_10766817551485/file}}
\item Erlang web site \url{http://www.erlang.org/}
\item Erlang programmation, Mickaël Rémond, Editions Eyrolles, 2003
\footnote{\url{http://www.editions-eyrolles.com/php.accueil/Ouvrages/ouvrage.php3?ouv_ean13=9782212110791}}
@@ -909,7 +909,7 @@ \section{Acknowledgments}
\section{Frequently Asked Questions}
-\subsection{IDX-tsunami crashes when I start it }
+\subsection{tsung crashes when I start it }
Does your Erlang system has ssl support enabled ?
@@ -921,7 +921,7 @@ \subsection{IDX-tsunami crashes when I start it }
you should see 'ok'
\end{Verbatim}
-\subsection{IDX-tsunami still doesn't start ...}
+\subsection{tsung still doesn't start ...}
Most of the time, when a crash happened at startup without any traffic
generated, the problem arise because the main Erlang controller node cannot
@@ -964,7 +964,7 @@ \subsection{IDX-tsunami still doesn't start ...}
7,
6,
"negociate"},
- "/home/username/.idx-tsunami/log/20040204-18:32",
+ "/home/username/.tsung/log/20040204-18:32",
undefined,
0,
undefined,
@@ -977,7 +977,7 @@ \subsection{IDX-tsunami still doesn't start ...}
\end{Verbatim}
%%%$
-IDX-Tsunami launches a new erl virtual machine to do the actual
+tsung launches a new erl virtual machine to do the actual
injection even when you have only one machine in the injection
cluster. This is because it needs to by-pass some limit with the number
of open socket from a single process (1024 most of the time). The idea
@@ -1007,7 +1007,7 @@ \subsection{IDX-tsunami still doesn't start ...}
of your client machine should not refer to this address.
\strong{New in 1.1.0}: If you don't use the distributed feature of
-Tsunami and have trouble to start a remote beam on a local machine,
+tsung and have trouble to start a remote beam on a local machine,
you can set the \varname{'use\_controller\_vm'} attribute to true, for ex.:
\begin{Verbatim}
@@ -1032,25 +1032,25 @@ \subsection{IDX-tsunami still doesn't start ...}
(in SuSE see \file{/etc/ssh/sshd_config}) and symlink from one of the approved paths
to the erlang executable (thanks to Gordon Guthrie for reporting this).
-\subsection{IDX-tsunami still crashes/fails when I start it !}
+\subsection{tsung still crashes/fails when I start it !}
First look at the log file
-\file{~/.idx-tsunami/log/XXX/tsunami_controller@yourhostname'} to see
+\file{~/.tsung/log/XXX/tsung_controller@yourhostname'} to see
if there is a problem.
If the file is not created and a crashed dump file is present, maybe
-you are using a binary installation of tsunami not compatible with the
+you are using a binary installation of tsung not compatible with the
version of erlang you used.
-If you see nothing wrong, you can compile \program{idx-tsunami} with full
+If you see nothing wrong, you can compile \program{tsung} with full
debugging: recompile with \command{make debug} , and
don't forget to set the loglevel to "debug" in the XML file.
-To start the debugger or see what happen, start \program{IDX-Tsunami} with the
+To start the debugger or see what happen, start \program{tsung} with the
\userinput{debug} argument instead of \userinput{start}. You will have
-an erlang shell on the \varname{tsunami\_controller} node. Use
+an erlang shell on the \varname{tsung\_controller} node. Use
\command{toolbar:start().} to launch the graphical tools provided by
Erlang.
-\subsection{What is the format of the stats file idx-tsunami.log ?}
+\subsection{What is the format of the stats file tsung.log ?}
\begin{Verbatim}
# stats: dump at 1083694995
@@ -1086,9 +1086,9 @@ \subsection{What is the format of the stats file idx-tsunami.log ?}
\subsection{How can I specify the number of concurrent users ?}
You can't. But it's on purpose: the load generated by
-\program{IDX-Tsunami} is dependent on the arrival time between new
+\program{tsung} is dependent on the arrival time between new
clients. Indeed, once a client has finished his session in
-\program{idx-tsunami}, it stops. So the number of concurrent users is
+\program{tsung}, it stops. So the number of concurrent users is
a function of the arrival rate and the mean session duration.
For example, if your web site has $1000$ visits/hour, the arrival rate
View
6 examples/http_distributed.xml.in
@@ -1,8 +1,8 @@
<?xml version="1.0"?>
-<!DOCTYPE idx-tsunami SYSTEM "@prefix@/share/@PACKAGE_NAME@/@DTD@">
+<!DOCTYPE tsung SYSTEM "@prefix@/share/@PACKAGE_NAME@/@DTD@">
<!-- set dumptraffic="true" to dump all received and sent packets -->
<!-- set loglevel="debug" for maximum verbosity -->
-<idx-tsunami loglevel="notice" dumptraffic="false" version="1.0">
+<tsung loglevel="notice" dumptraffic="false" version="1.0">
<!-- Client side setup -->
<clients>
@@ -136,4 +136,4 @@
<request> <http url="/" method="GET" version="1.1" if_modified_since="Fri, 14 Nov 2003 02:43:31 GMT"></http> </request>
</session>
-</idx-tsunami>
+</tsung>
View
6 examples/http_simple.xml.in
@@ -1,6 +1,6 @@
<?xml version="1.0"?>
-<!DOCTYPE idx-tsunami SYSTEM "@prefix@/share/@PACKAGE_NAME@/@DTD@">
-<idx-tsunami loglevel="notice" version="1.0">
+<!DOCTYPE tsung SYSTEM "@prefix@/share/@PACKAGE_NAME@/@DTD@">
+<tsung loglevel="notice" version="1.0">
<!-- Client side setup -->
<clients>
@@ -48,4 +48,4 @@
<request> <http url="/index.en.html" method="GET" version="1.1" ></http> </request>
</session>
-</idx-tsunami>
+</tsung>
View
6 examples/jabber.xml.in
@@ -1,6 +1,6 @@
<?xml version="1.0"?>
-<!DOCTYPE idx-tsunami SYSTEM "@prefix@/share/@PACKAGE_NAME@/@DTD@">
-<idx-tsunami loglevel="notice" version="1.0">
+<!DOCTYPE tsung SYSTEM "@prefix@/share/@PACKAGE_NAME@/@DTD@">
+<tsung loglevel="notice" version="1.0">
<clients>
<client host="localhost" use_controller_vm="true"></client>
@@ -56,5 +56,5 @@
</transaction>
</session>
-</idx-tsunami>
+</tsung>
View
6 examples/pgsql.xml.in
@@ -1,6 +1,6 @@
<?xml version="1.0"?>
-<!DOCTYPE idx-tsunami SYSTEM "@prefix@/share/@PACKAGE_NAME@/@DTD@">
-<idx-tsunami loglevel="notice">
+<!DOCTYPE tsung SYSTEM "@prefix@/share/@PACKAGE_NAME@/@DTD@">
+<tsung loglevel="notice">
<clients>
<client host="localhost" use_controller_vm="true"/>
@@ -43,5 +43,5 @@
<request><pgsql type="close"></pgsql></request>
</session>
-</idx-tsunami>
+</tsung>
View
2  include/ts_config.hrl
@@ -27,7 +27,7 @@
-vc('$Id$ ').
-author('nicolas.niclausse@niclux.org').
--define(TSUNAMIPATH, "TSUNAMIPATH").
+-define(TSUNGPATH, "TSUNGPATH").
-define(SESSION_POP_ERROR_MSG, "Total sum of session popularity is not equal to 100").
-record(config, {
View
2  include/ts_http.hrl
@@ -90,6 +90,6 @@
-define(GET, "GET").
-define(POST, "POST").
--define(USER_AGENT, "IDX-Tsunami").
+-define(USER_AGENT, "Tsung").
-define(USER_AGENT_ERROR_MSG, "Total sum of user agents frequency is not equal to 100").
View
28 src/analyse_msg.pl.in