Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Millipede is a multi-protocol/modular benchmark tool writen in Python.
Python Shell
Branch: master

Fetching latest commit…

Cannot retrieve the latest commit at this time

Failed to load latest commit information.
doc
modules
octopussy
.gitignore
README.rst
octopussy.py
setup.py

README.rst

Octopussy: benchmark HTTP replay Log

This python script replay logs (w3c, iis, mysql ...) on a target server. You give a logfile to the Octopussy with the -f option. It read all the file and create a Queue with all the logs. After the file is read the Octopussy throw out his arms (thread numbers depends) and launch all requests at the same time.

This python script replay HTTP logs (w3c, iis ...) on a target server. The octopussy read all the file and create a Queue. After the file is read the Octopussy throw out his arms (thread numbers depends) and launch all requests at the same time.

Usage

octopussy [-h] [-t {1,128}] [-g] [-k] [-r REFRESH] [-m MODULE]
          [-l LOGFORMAT] [-V] [-v]
          HOST LOGFILE

Positional arguments (required)

HOST Server hostname or IP where to play the request
LOGFILE The logfile to replay

Optional arguments

-h, --help Show this help message and exit
-t THREADS, --threads THREADS The number of HTTP parser threads
-g, --graph Generate a chart of the benchmark
-k KEEPALIVE, --keepalive KEEPALIVE Max requests by persistent connection
-r REFRESH, --refresh REFRESH The refresh rate for the statistics/chart output
-m MODULE, --module MODULE The module to run
-l LOGFORMAT, --log-format LOGFORMAT The log format to parse
-V, --verbose Verbose output
-v, --version Show program's version number and exit

Example

octopussy www.zaide.org /var/log/apache2/access_log -V -g

Installation

With pip:

pip install octopussy

With easy_install:

easy_install octopussy

From sources:

python setup.py install

TODO

  • Modules: - NoSQL - FTP (ProFTP, PureFTP)
  • Distribution of queries on differents benchmark "requests servers": 1 server (read the logfile and handle the queue + X requests clients benchmark)
  • Replay a scenario (Selenium?)
  • Rate limit (ex: 500req/sec)
  • Searching the max threads value automaticaly
  • HTTPS support
Something went wrong with that request. Please try again.