Skip to main content
This is a pre-production deployment of Warehouse. Changes made here affect the production instance of PyPI (
Help us improve Python packaging - Donate today!

Apache Log live replicator

Project Description

Apache Replay is a command line tool that reads Apache log files and replays it on a remote server in real time. It’s goal it’s to load test HTTP/HTTPS servers with the same traffic that is received on another server.

This tool is written in Python and it uses apache-log-parser, requests and gevent libraries.

Main Features

  • Real time replay load testing
  • Accept any Apache log format
  • Support Basic Authentication
  • URL match and ignore filters


On Linux, first install python development and libevent packages using system package manager:

# Debian-based distributions (eg Ubuntu, ...):
$ sudo apt-get install python-dev libevent-dev

# RPM-based distributions:
$ yum install python-devel libevent-*

Then it can be installed from PyPi using pip :

$ pip install areplay

Basic usage

$ areplay /var/log/apache2/access.log


$ areplay --help

usage: areplay [-h] [-v] [-a AUTH] [-w WORKERS] [-m MATCH] [-i IGNORE]
               [-d] [-f FORMAT] [-sv] [-iu IGNORE_URL]
               server log_file

 positional arguments:

  server                      Remote Server
  log_file                    Apache log file path

 optional arguments:

   -h, --help                           Show this help message and exit
   -v, --version                        Show program's version number and exit
   -a AUTH, --auth AUTH                 Basic authentication user:password
   -w NUM, --workers NUM                Workers pool size
   -d, --dry-run                        Only prints URLs
   -f FORMAT, --format FORMAT           Apache log format
   -i IGNORE, --ignore IGNORE           Ignore matching requests
   -iu URL, --ignore-url URL            URL to hit when URL from log is ignored
   -m MATCH, --match MATCH              Only process matching requests
   -sv, --skip-verify                   Skip SSL certificate verify


Basic auth:

$ areplay -a username:password access.log

URL filtering - ignore js and css - use | (pipe) to separate keywords:

$ areplay -i '.css|.js' access.log

URL filtering - process only js and css - use | (pipe) to separate keywords:

$ areplay -m '.css|.js' access.log

Custom Apache Log format - get LogFormat for Apache configuration file:

$ cat /etc/apache2/apache2.conf | grep LogFormat | grep combined
LogFormat "%h %l %u %t \"%r\" %>s %O \"%{Referer}i\" \"%{User-Agent}i\"" combined

$ areplay -f "%h %l %u %t \"%r\" %>s %O \"%{Referer}i\" \"%{User-Agent}i\"" access.log

Change Log

Please see CHANGELOG.


Please see LICENSE.


Thank you to the people from Boom! for inspiration and Dinko Korunic for snippet (GeventTail).

Release History

Release History

This version
History Node


History Node


History Node


History Node


History Node


Download Files

Download Files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

File Name & Checksum SHA256 Checksum Help Version File Type Upload Date
areplay-0.6.tar.gz (5.0 kB) Copy SHA256 Checksum SHA256 Source Mar 19, 2016

Supported By

WebFaction WebFaction Technical Writing Elastic Elastic Search Pingdom Pingdom Monitoring Dyn Dyn DNS Sentry Sentry Error Logging CloudAMQP CloudAMQP RabbitMQ Heroku Heroku PaaS Kabu Creative Kabu Creative UX & Design Fastly Fastly CDN DigiCert DigiCert EV Certificate Rackspace Rackspace Cloud Servers DreamHost DreamHost Log Hosting