mozilla-cloud-services-logger

Tools for producing a common application logging format defined by Mozilla Cloud Services


Keywords
mozilla, logging, django
License
Other
Install
pip install mozilla-cloud-services-logger==1.0.1

Documentation

mozilla-cloud-services-logger

Build Status

This package provides two things:

  1. mozilla_cloud_services_logger.formatters.JsonLogFormatter: a Python logging Formatter that produces messages following the JSON schema for a common application logging format defined by Mozilla Cloud Services.

  2. mozilla_cloud_services_logger.django.middleware.RequestSummaryLogger: Django middleware that emits the request.summary log event on every request.

Examples

Django settings.py:

MIDDLEWARE_CLASSES = (
    # ...
    'mozilla_cloud_services_logger.django.middleware.RequestSummaryLogger',
    # ...
)

LOGGING = {
    'version': 1,
    'formatters': {
        'json': {
            '()': 'mozilla_cloud_services_logger.formatters.JsonLogFormatter',
            'logger_name': 'MySiteName'
        }
    },
    'handlers': {
        'console': {
            'level': 'DEBUG',
            'class': 'logging.StreamHandler',
            'formatter': 'json'
        },
    },
    'loggers': {
        'request.summary': {
            'handlers': ['console'],
            'level': 'DEBUG',
        },
    }
}

Testing

pip install jsonschema testfixtures
python tests.py