Most options listed in the documentation are missing in the actual code
Closed this issue · 2 comments
I tried to launch a bees attack with some headers using the command:
bees attack -u 'myurl' -n 50 -H "content-type: application/json ; authorization: mykey"
I got the following response from Bees:
Usage:
bees COMMAND [options]Bees with Machine Guns
A utility for arming (creating) many bees (small EC2 instances) to attack
(load test) targets (web applications).commands:
up Start a batch of load testing servers.
attack Begin the attack on a specific url.
down Shutdown and deactivate the load testing servers.
report Report the status of the load testing servers.bees: error: no such option: -H
Then I looked at the commands provided with bees --help
and it is a small subset of what the documentation seems to suggest. If the code does not do what the documentation suggests, should it be in the documentation?
The output of bees --help
:
Usage:
bees COMMAND [options]
Bees with Machine Guns
A utility for arming (creating) many bees (small EC2 instances) to attack
(load test) targets (web applications).
commands:
up Start a batch of load testing servers.
attack Begin the attack on a specific url.
down Shutdown and deactivate the load testing servers.
report Report the status of the load testing servers.
Options:
-h, --help show this help message and exit
up:
In order to spin up new servers you will need to specify at least the
-k command, which is the name of the EC2 keypair to use for creating
and connecting to the new servers. The bees will expect to find a .pem
file with this name in ~/.ssh/.
-k KEY, --key=KEY The ssh key pair name to use to connect to the new
servers.
-s SERVERS, --servers=SERVERS
The number of servers to start (default: 5).
-g GROUP, --group=GROUP
The security group to run the instances under
(default: default).
-z ZONE, --zone=ZONE
The availability zone to start the instances in
(default: us-east-1d).
-i INSTANCE, --instance=INSTANCE
The instance-id to use for each server from (default:
ami-ff17fb96).
-l LOGIN, --login=LOGIN
The ssh username name to use to connect to the new
servers (default: newsapps).
attack:
Beginning an attack requires only that you specify the -u option with
the URL you wish to target.
-u URL, --url=URL URL of the target to attack.
-n NUMBER, --number=NUMBER
The number of total connections to make to the target
(default: 1000).
-c CONCURRENT, --concurrent=CONCURRENT
The number of concurrent connections to make to the
target (default: 100).
The version in pip is significantly outdated, as discussed over a year ago in this thread: #106
If we are having the same issue as a year ago, let's get the team to put together a stable release to send to PyPi. I think it's about time.
Team: contact me if there are any loose ends or features to be bolted down before a stable release is possible.
Thanks for the reply. I did go through the other issues and eventually managed to install the newer version. But it should not be this difficult. Atleast the documentation should mention the correct way to install. Instead it explicitly recommends the pip version which is apparently outdated.