Skip to main content

Alogator is an aggregated logging actor system.

Project description

Alogator is an aggregated logging actor system.

Installation

To get the latest stable release from PyPi

pip install alogator

To get the latest commit from GitHub

pip install -e git+git://github.com/arteria/alogator.git#egg=alogator

Add alogator to your INSTALLED_APPS and define a logger

INSTALLED_APPS = (
    ...,
    'alogator',
)

LOGFILE_PATH = os.path.join(os.path.join(BASE_DIR, 'logs/'), "alogator.log")

LOGGING = {
    'version': 1,
    'disable_existing_loggers': False,
    'filters': {
        'require_debug_false': {
            '()': 'django.utils.log.RequireDebugFalse'
        }
    },
    'formatters': {
        'standard': {
            'format': "[%(asctime)s] %(levelname)s [%(name)s:%(lineno)s] %(message)s",
            'datefmt': "%d/%b/%Y %H:%M:%S"
        },
    },
    'handlers': {
        'logfile': {
            'level': 'DEBUG',
            'class': 'logging.handlers.RotatingFileHandler',
            'filename': LOGFILE_PATH,
            'maxBytes': 1000000,
            'backupCount': 0,
            'formatter': 'standard',
        }
    },
    'loggers': {
        'alogator': {
            'handlers': ['logfile'],
            'level': 'DEBUG',
        },
    }
}

Don’t forget to create the tables for your database

./manage.py syncdb alogator
# python manage.py migrate

Usage

Setup your logfiles, search patterns and actors in the admin backend.

To run one (scan all logfiles for patterns) just call the scanlogfiles management command.

python manage.py scanlogfiles

You can use alogator_cli to check the log files in a project. Simple add paths to settings files as arguments. Be aware that you have to run the project, so you need to first activate your virtualenv if you have one.

# if you have a virtualenv
. /path/to/env/bin/activate

alogator_cli /path/to/project/settings.py

To run this continously you could setup a cronjob. For example, to run this every other minute use

crontab -e

Than add

*/2 * * * * /path/to/your/manage.py scanlogfiles

You may have to activate your virtualenv depending on your setup.

TODO

  • Customizable temporary working dir instead of /tmp
  • Customizable subject, eg. [Alogator] (to filter inbox)
  • Add “To mute this actor, visit…” in message/email.

Histroy

Please refer to CHANGELOG.txt

Contribute

If you want to contribute to this project, simply send us a pull request. Thanks. :)

Project details


Release history Release notifications

Download files

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

Filename, size & hash SHA256 hash help File type Python version Upload date
alogator-0.2.0.tar.gz (10.7 kB) Copy SHA256 hash SHA256 Source None May 22, 2015

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page