Correlation IDs in Django for debugging requests
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.
- 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/
- First release on PyPI.
- Made CID repsonse header configurable, and optional (thanks @dbaty)
|Filename, size||File type||Python version||Upload date||Hashes|
|Filename, size django_cid-0.1.2-py2.py3-none-any.whl (8.7 kB)||File type Wheel||Python version 3.5||Upload date||Hashes View|
|Filename, size django-cid-0.1.2.tar.gz (6.6 kB)||File type Source||Python version None||Upload date||Hashes View|
Hashes for django_cid-0.1.2-py2.py3-none-any.whl