Skip to main content

Error logging and reporting middleware

Project description

repoze.errorlog Documentation Status

This package implements a WSGI middleware filter which intercepts exceptions and writes them to a Python logging module channel (or the wsgi.errors filehandle, if no channel is configured). It also allows the browsing of limited exception history via a browser UI.


Install using setuptools, e.g. (within a virtualenv):

$ easy_install repoze.errorlog

or using pip:

$ pip install repoze.errorlog


For details on using the various components, please see the documentation in docs/index.rst. A rendered version of that documentation is also available online:

Reporting Bugs

Please report bugs in this package to

Obtaining Source Code

Download development or tagged versions of the software by visiting:


1.1 (2016-06-03)

  • Add support for Python 3.5.

  • Drop support for Python 2.6 and 3.2.

1.0.0 (2015-02-07)

  • Add support for Python 3.2, 3,3, and 3.4, and PyPy3.

  • Drop dependency on Paste (forking / simplifying paste.request.parse_querystring and paste.request.construct_url).

  • Add support for testing on Travis.

  • Add Sphinx documentation.

  • Drop support for Python 2.4 / 2.5.

0.9.2 (2012-03-29)

  • This release is the last which will maintain support for Python 2.4 / Python 2.5.

  • Add support for continuous integration using tox and jenkins.

  • Add support for PyPy.

  • Add ‘ dev’ alias (runs develop plus installs nose and coverage).

  • Moved to github.

0.9.1 (2010-05-23)

  • Make it possible to send exceptions to a logger channel as described in the docs; this didn’t actually work previously because a) I’m not very good at programming and b) the Python logging module is terrible (using s[-1] and not catching an exception when the string is empty rather than using s.endswith(), at least under Python 2.4).

0.9 (2010-05-23)

  • Bump copyrights.

  • Remove dependency on

  • Docs now show how to use ErrorLog outside PasteDeploy.

  • Avoid a dependency on elementtree when used with Python 2.5 and later. In those Python versions we used the built-in xml.etree support.

  • 100% test coverage.

0.8 (2008-06-25)

  • Remove post-mortem debug middleware (moved to repoze.debug).

  • Initial PyPI release.

0.7 (2008-05-21)

  • Add post-mortem debug middleware (egg:repoze.errorlog#pdbpm)

  • Remove versions from dependencies.



  • Depend on elementree 1.2.6 explicitly.


  • Add ignore feature to configuration. A value consisting of space-separated entry point names can be used here, indicating that these exception types should not be logged or kept in exception history.

  • Allow __error_log__ view path to be configured via path entry in Paste configuration.

  • Place repoze.errorlog.path and repoze.errorlog.entryid in the WSGI environment to allow error-catching middleware and apps to compose URLs to errors.


  • 0.2 didn’t work as a filter. :-(

  • Don’t use zope.pagetemplate, it has too many (potentially conflicting) dependencies. Instead use meld for template views.


  • Provide a TTW view (accessible via /__error_log__) of recent tracebacks.


  • Initial release.

Download files

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

Source Distribution

repoze.errorlog-1.1.tar.gz (21.1 kB view hashes)

Uploaded source

Built Distributions

repoze.errorlog-1.1-py3-none-any.whl (13.6 kB view hashes)

Uploaded 3 4

repoze.errorlog-1.1-py2-none-any.whl (13.6 kB view hashes)

Uploaded 2 7

Supported by

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