Skip to main content

Correlation IDs in Django for debugging requests

Project description

https://travis-ci.org/snowball-one/cid.png?branch=master https://coveralls.io/repos/snowball-one/cid/badge.png?branch=master

Logging is important. Anyone who has had a call at 3am to say the site is down knows this. Without quality logging it is almost impossible to work out what on earth is happening.

Even with plenty of logs it can be hard to track down exactly what the effects of a particular request are. Enter Django Correlation IDs. The approach is quite a simple one. Incoming requests are assigned a unique id (a uuid). This can either happen in say your public facing web server (e.g. nginx) or be applied as soon as it hits django.

This cid is then available through the django request/response cycle. We provide filters for logging witch adds the cid to the logging record so you can add it to your formatting string. We also provide wrappers around all the standard database backends which adds the cid as a comment before each SQL request.

Features

  • Processing/Generation of a correlation id

  • Database wrappers to add correlation id to each sql call

  • Logging filter to inject the correlation id into logs

  • A template context processor to make correlation id available in templates

  • Output correlation id as a header

Documentation can be found at: http://django-correlation-id.readthedocs.org/

History

0.1.0 (2014-08-05)

  • First release on PyPI.

0.1.2 (2016-12-01)

  • Made CID repsonse header configurable, and optional (thanks @dbaty)

0.2.0 (2016-12-06)

  • Added support for Django 1.10 middleware (thanks @qbey)

Project details


Download files

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

Source Distribution

mbq-django-cid-0.2.1.tar.gz (7.6 kB view details)

Uploaded Source

File details

Details for the file mbq-django-cid-0.2.1.tar.gz.

File metadata

File hashes

Hashes for mbq-django-cid-0.2.1.tar.gz
Algorithm Hash digest
SHA256 e22d79ee88e88da1b402e8bfa0c009f8dce5b0205e25fd019f0292c176e4d601
MD5 420ac75a27814a6c65e6eb5c9f5c7d61
BLAKE2b-256 7f67cbb50e735b4736ab80f876ce573aad35cb4f6d3728452c96cb41e9585323

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page