yandex-tank(1)

NAME
yandex-tank - is an utility for measuring performance of web services.

SYNOPSIS
yandex-tank | {-c |--config} [config_file] | {-s SCHEDULED_START|--scheduled-start= SCHEDULED_START}| {-o OPTION|--option=OPTION} | {-h |--help} | {-i |--ignore-lock}| {-f |--fail-lock}| {-l LOG |--log=LOG}| {-m |--manual-start} | {-n |--no-rc} | {-q |--quiet}| {-v |--verbose} {ammo_file}

DESCRIPTION
This manual page explains the yandex-tank program usage. This program is a high performance modular utility for web services load testing.

OPTIONS

-c, --config config_file yandex-tank with given configuration file config_file. By default, load.conf from your current directory is used. Can be used several times for multiple configuration files. See details in load.conf(5).

-i, --ignore-lock ignore lock file, use if you want to run multiple instances of yandex-tank utility.

-f, --fail-lock don't wait for lock file to become free, stop test if lock file is busy.

-l LOG, --log=LOG path to main log file.

-s SCHEDULED_START, --scheduled-start= SCHEDULED_START run test in the specified moment. SCHEDULED_START has YYYY-MM-DD hh:mm:ss format.

-m, --manual-start yandex-tank generates all data for test execution and requests confirmation for start. Helpful in giving load at precisely chosen time (a big red button).

-n, --no-rc ignore default config files at /etc/yandex-tank/*.ini and /.yandex-tank

-o OPTION, --option=OPTION specify configuration options in command line. Example: yandex-tank -o "console.short_only=1" --option="phantom.force_stepping=1"

-q, --quiet show only errors/warnings messages in console. Information messages will be skipped.

-v, --verbose show a lot more messages in console.

ammo_file file with requests in req-style or uri-style. Further reading: REQ-style - https://github.com/yandex-load/yandex-tank#request-style URI-style - https://github.com/yandex-load/yandex-tank#uris-in-file

NOTES
Be careful with config_file tuning. Incorrect configuraton could lead to network devices or/and web services overload and FBI's knocking your door.

EXAMPLE
Simple configuration file making requests to "/" with constant rate of 10 requests per second, for 10 minutes. Server's IP and port are 127.0.0.1:80
[phantom]
address=127.0.0.1:80
rps_schedule = const(10,10m)
uris = /
More complex example: ammo_file in req_style, web server has ipv6/ssl enabled, load profile is combined from different primitives. Also, request/answer logging, autostop criteries, custom aggregator and console's view settings are enabled.
[phantom]
address=2a02:6b8:0:c1f::100:1
port=80
rps_schedule = const (10,10m)
  line(10,100,10m)
  step(100,500,100,10m)
ssl = 1
writelog=1
[autostop]
autostop=time(1,10)
  http(404,1%,5s)
  net(xx,1,30)
[console]
disable_all_colors = 1
[aggregator]
time_periods = 1ms 2 3 4 5 6 7 8 9 10 20 30 40 50 60 70 80 90 100 150 200 250 300 350 400 450 500 600 650 700 750 800 850 900 950 1s

SEE ALSO
load.conf(5)
https://github.com/yandex-load/yandex-tank#yandex-tank