Skip to main content

Correlation IDs in Django for debugging requests

Project description

======================
Django Correlation IDs
======================

.. image:: https://travis-ci.org/snowball-one/cid.png?branch=master
:target: https://travis-ci.org/snowball-one/cid

.. image:: https://coveralls.io/repos/snowball-one/cid/badge.png?branch=master
:target: https://coveralls.io/r/snowball-one/cid?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 throught 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 processe 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

django-cid-0.2.0.tar.gz (6.7 kB view details)

Uploaded Source

Built Distribution

django_cid-0.2.0-py2.py3-none-any.whl (8.9 kB view details)

Uploaded Python 2Python 3

File details

Details for the file django-cid-0.2.0.tar.gz.

File metadata

  • Download URL: django-cid-0.2.0.tar.gz
  • Upload date:
  • Size: 6.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for django-cid-0.2.0.tar.gz
Algorithm Hash digest
SHA256 84de1c1a2e2f71641112d3981dd9ba04b705ea422dc1b80de63acdc7463f00cb
MD5 f4c318667c7b20ab738aae4a81824892
BLAKE2b-256 1933a27f5985e324350cf8c4d297efd8157b5bb44cab97bb15ed73ddd16bc276

See more details on using hashes here.

File details

Details for the file django_cid-0.2.0-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for django_cid-0.2.0-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 55da2640a0d3d64663c6c787956db220822edf2263ad0e770b202c4da58b73cf
MD5 0ecd4145f826cdd4e4a9ae61b6b12bb0
BLAKE2b-256 99519e456430de5e0725569a00e13b53f39686b4721a79d59801d6e2c7ed7a86

See more details on using hashes here.

Supported by

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