Skip to main content

This is a middleware that displays debug tracebacks on production sites (where you would have DEBUG = False) only to developers. Developers have to install a special userscript to decode the traceback data. AES-256 (CBC mode) is used to encrypt the traceback. The decode key and client key are hashes of your SECRET_KEY with salts so your SECRET_KEY is safe even if your userscript gets in the wrong place.

Google Chrome and Firefox are supported. If you want to use something else you have to find a way to install the userscript yourself.

There’s also a decode page in the admin in case you get user reports with the encrypted data.

The error page and decrypt flow looks like this:

Sample error page

Installation guide

Install it:

pip install django-monkey-team

Change your Django project settings to have:

INSTALLED_APPS += (
    'monkey_team',
)
MIDDLEWARE_CLASSES += (
    'monkey_team.middleware.MonkeyTeamMiddleware',
)
DEBUG = False

Note, that if you want DEBUG = True and still have the middleware on you need to set:

MONKEY_FORCE_ACTIVE = True

Then go to django admin and install the userscript. The setup page looks like this:

Userscript install page

Requirements

PyCrypto is required.

The project has been tested on Django 1.3, 1.4, 1.5 and trunk with Python 2.6 and 2.7.

Build Status

Metadata

Release files for django-monkey-team 0.2.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for django-monkey-team 0.2.2
File Size Uploaded Provenance
django-monkey-team-0.2.2.tar.gz 70.3 kB Without provenance Details

Release files / django-monkey-team-0.2.2.tar.gz

Download URL django-monkey-team-0.2.2.tar.gz
Size 70.3 kB
Tags Source
SHA-256 checksum
How to use checksums
317201e99b6fc77adaca839e273dc943abff0540b693adb2c2f5a210761e2929
BLAKE2b-256 checksum
How to use checksums
f322f047e7a6b3a6f0c8cdee69cdb84da0fdd6cc453d594e2d68b182030b0f06
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Security for django-monkey-team 0.2.2

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page