aboutsummaryrefslogtreecommitdiff

pypi python travis-ci

Akita

Demo

Akita is a local HTTP log monitoring tool that runs in your terminal. With Akita, you can view a summary of you webserver's activity in real-time. All servers that utilize the Common Log Format are supported, including Apache and Nginx.

Akita is also a breed of dog originating from the mountainous northern regions of Japan. Akitas are powerful working dogs known for their fierce loyalty and affectionism to their owners. They're fearless guard dogs who won't back down from a challenge.

Akita

Installation

Akita is available on PyPI and can be installed using pip:

# Requires python 3!
$ pip install akita

Alternatively, you can clone the repository and run the code directly:

$ git clone https://github.com/michael-lazar/Akita.git
$ cd Akita
$ python -m akita

Usage

Launch Akita by pointing it at the server access log file that you want to monitor:

$ akita /var/log/apache/access.log

You can also pass in a text stream via a unix pipe:

$ tail -n 1 -f /var/log/apache/access.log | akita -

If you want to try running Akita but you don't have a webserver to point it to, you can use the apache-loggen command line tool to generate fake log data.

$ gem install apache-loggen

$ apache-loggen --rate=10 | akita -

Options

$ akita --help
usage: akita [--help] [--version] FILE

       / \      _-'
     _/|  \-''- _ /
__-' { |         \
    /             \
    /      "o.  |o }        Akita - Terminal HTTP Log Monitoring
    |            \ ;
                  ',
       \_         __\
         ''-_    \.//
           / '-____'
          /
        _'
      _-'

positional arguments:
  FILE                  A log file to watch, use "-" to pipe from stdin

optional arguments:
  -h, --help            show this help message and exit
  --alert-threshold ALERT_THRESHOLD
                        High traffic alert threshold, requests/second
  --alert-window ALERT_WINDOW
                        High traffic alert window, in seconds
  -V, --version         show program's version number and exit

Testing

This repository is continuously tested on TravisCI, but you can also run the test suite locally:

$ git clone https://github.com/michael-lazar/Akita.git
$ cd Akita
$ pip install .[test]  # Installs pytest if you don't already have it
$ env PYTHONPATH=. py.test -v

License

This project is distributed under the MIT license.