Skip to content

sztanyoo/Fake-Apache-Log-Generator

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

23 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Fake Apache Log Generator

This script generates a boatload of fake apache logs very quickly. Its useful for generating fake workloads for data ingest and/or analytics applications.

It can write log lines to console, to log files or directly to gzip files.

It utilizes the excellent Faker library to generate realistic ip's, URI's etc.


Basic Usage

Generate a single log line to STDOUT

$ python apache-fake-log-gen.py

Generate 100 log lines into a .log file

$ python apache-fake-log-gen.py -n 100 -o LOG

Generate 100 log lines into a .gz file at intervals of 10 seconds

$ python apache-fake-log-gen.py -n 100 -o GZ -s 10

Infinite log file generation (useful for testing File Tail Readers)

$ python apache-fake-log-gen.py -n 0 -o LOG

Prefix the output filename

$ python apache-fake-log-gen.py -n 100 -o LOG -p WEB1

Detailed help

$ python apache-fake-log-gen.py -h
usage: apache-fake-log-gen.py [-h] [--output {LOG,GZ,CONSOLE}]
                              [--num NUM_LINES] [--prefix FILE_PREFIX]
                              [--sleep SLEEP]

Fake Apache Log Generator

optional arguments:
  -h, --help            show this help message and exit
  --output {LOG,GZ,CONSOLE}, -o {LOG,GZ,CONSOLE}
                        Write to a Log file, a gzip file or to STDOUT
  --num NUM_LINES, -n NUM_LINES
                        Number of lines to generate (0 for infinite)
  --prefix FILE_PREFIX, -p FILE_PREFIX
                        Prefix the output file name
  --sleep SLEEP, -s SLEEP
                        Sleep this long between lines (in seconds)

Usage in Docker

Build the image:

docker build -t apache-fake-log-gen .

Run the application, and provide application command line arguments as Docker CMD args:

docker run --rm apache-fake-log-gen -n 10 -s 1

NOTE: -o LOG option does not work in this case.

Requirements

  • Python 2.7
  • pip install -r requirements.txt

License

This script is released under the Apache version 2 license.

About

Generate a boatload of Fake Apache Log files very quickly

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 93.0%
  • Dockerfile 7.0%