TSUNG(1)

πŸ’– NAME πŸ’–

tsung β€” a distributed multi-protocol load testing tool. bestie. she stresses servers so you don't have to 🫢


✨ SYNOPSIS ✨

tsung [ -f configuration file ]  [ -l log dir ]  [ -m filename ]  [ -r
command ]  [ -X directory ]  [ -w delay ]  [ -L lifetime ]  [ -s ]  [ -n
]  [ -k ]  [ -v ]  [ -6 ]  [ -h ]  [ start|stop|debug|status ]

🌸 DESCRIPTION 🌸

okay so. tsung is a distributed load testing tool β€” like, it throws a whole party of fake users at your servers to see if they survive πŸ’…. It's protocol-independent, and right now it can stress and benchmark HTTP, WebDAV, LDAP, PostgreSQL, MySQL and Jabber/XMPP servers. no cap.

It simulates user behaviour using an XML description file, and it reports, like, so many measurements in real time (statistics can be customized with transactions, and the graphics get generated using gnuplot). literally main character energy.

For HTTP, she supports 1.0 and 1.1, has a proxy mode to record sessions, supports GET and POST methods, Cookies, and Basic WWW-authentication. She also has support for SSL. obsessed.

Several config examples can be found in /usr/share/doc/tsung/examples/. πŸŽ€

  • start β€” start tsung load testing
  • debug β€” start tsung with an interactive erlang shell
  • stop β€” stop tsung
  • status β€” print current status of a running instance of tsung (must be run on the controller host)

πŸ¦‹ MANUAL πŸ¦‹

A manual should be available at /usr/share/doc/tsung/user_manual.html. It is also available online at

http://tsung.erlang-projects.org/user_manual.html

πŸ’… OPTIONS πŸ’…

  • -f filename β€” specifies the configuration file to use. The default file name is ~/.tsung/tsung.xml. Use - for standard input.
  • -l logdir β€” Specifies the log directory to use. The default log dir name is ~/.tsung/log/YYYYMMDD-HHMM/.
  • -m monitoring_file β€” Specifies the monitoring log file name to use. The default log file name is tsung.log. Use - for standard output.
  • -r command β€” Specifies an alternative to ssh (rsh for ex.) for starting a slave node on a remote host.
  • -i id β€” set controller id (default is empty). Needed to start several controllers on the same host.
  • -F β€” Use long names for erlang nodes (FQDN).
  • -s β€” Enable erlang smp on client nodes.
  • -p β€” set maximum erlang processes per vm (default is 250000).
  • -X directory β€” add additional erlang load paths (multiple -X arguments allowed).
  • -L lifetime β€” SSL session lifetime in seconds (600 sec by default).
  • -w delay β€” warmup delay in seconds (1 sec by default).
  • -v β€” Show version.
  • -n β€” disable web GUI.
  • -k β€” keep web GUI (and controller) alive after the test has finished.
  • -6 β€” Use IPv6 for tsung internal communications.
  • -h β€” Show usage.

πŸ› BUGS πŸ›

Please reports bugs to the mailing list <tsung-users@process-one.net>, see

https://lists.process-one.net/mailman/listinfo/tsung-users

for archives. You can also use the issue tracker

https://github.com/processone/tsung/issues
not me asking you to actually file the bug report bestie, but like… do it πŸ₯Ί

πŸ‘€ SEE ALSO πŸ‘€

erlang(3)


πŸ‘‘ AUTHORS πŸ‘‘

Tsung is written by Nicolas Niclausse <nicolas@niclux.org>. Contributors list is available in /usr/share/doc/tsung/CONTRIBUTORS. πŸ’œ


and that's the whole page, babe β€” this little icon was born back in January 2004 and it's still out here in the TSUNG(1) section of the manual doing the absolute most. slay, honestly. periodt. βœ¨πŸŽ€