This is a pre-production deployment of Warehouse, however changes made here WILL affect the production instance of PyPI.
Latest Version Dependencies status unknown Test status unknown Test coverage unknown
Project Description

An errbit client for python.

Installation

Add errbit to your package dependencies in setup.py or requirements.txt.

Configuration

Configure errbit with environment variables:

  • ERRBIT_URL - the post-url to your errbit installation.
  • ERRBIT_APP_ID - your errbit app id (see URL when visiting the app).
  • ERRBIT_API_KEY - your errbit API key.
  • ERRBIT_PACKAGE - the setuptools name of your package.
  • ERRBIT_ENVIRONMENT - the name of the environment you are running, such as staging or production.
  • ERRBIT_HTTP_CLIENT - Switch the http client implementation. Switching the implementation can solve different problems when communicating from private networks with HTTP proxies. Current implementations are: requests, urllib, urllib2.
  • ERRBIT_IGNORE - path to ignore file (default: ~/.errbit/errbit_ignore.json)

Ignore file

The thrown exception will be ignored and not passed to errbit if its message matches one of the regex in exception_msg.

{
    "exception_msg": [
        "^AttributeError\\b",
        "regex2"
    ]
}

Usage

The errbit package ships with the core notification implementation for errbit and integrations for some frameworks.

Manually posting exceptions

Use the errbit client to post exceptions to an errbit installation:

from errbit.client import Client
import sys

client = Client()
try:
    do_something()
except:
    exc_info = sys.exc_info()

    request = {
        'url': 'http://my.app/app/folders/create',
        'component': 'folders',
        'action': 'create',
        'params': {
            'title': 'My Folder'},
        'session': {
            'cookie': 'session_id=123345'},
        'cgi-data': {
            'HTTP_X_FORWARDED_HOST': 'my.app'}}

    client.post(exc_info, request=request)

Plone

Plone integration is automatically done with a logging handler, nothing needs to be done for enabling it beside configuring the environment variables.

For testing the connection you can call the view errbit-make-error as Manager.

Report JavaScript errors in Plone

In order to report JavaScript errors, install the Generic Setup profile profile-errbit.ploneintegration:default, which registers the necessary JavaScript resources.

For JavaScript reporting the ERRBIT_APP_ID environment variable needs to be set.

Test the configuration: if http://localhost:8080/Plone/errbit-plone.js is empty not all enviornment variables are configured.

Development / tests

Install the package and run the tests using buildout:

git clone git@github.com:4teamwork/errbit-python.git
cd errbit-python
ln -s test-plone-4.3.x.cfg buildout.cfg
python2.7 bootstrap.py
bin/buildout
bin/test

Changelog

1.4.0 (2016-01-10)

  • Add uninstall profile for Plone integration. [jone]

1.3.1 (2015-08-10)

  • Fix bug when trying to log a cleanup error. [jone]

1.3.0 (2015-03-02)

  • Implement JavaScript error reporting. The profile “errbit-ploneintegration:default” must be installed. [jone]

1.2.1 (2015-03-02)

  • Fix type error when having non-strings as keys in request’s cgi-data. [jone]

1.2.0 (2015-02-27)

  • Post “unknown” app version when ERRBIT_PACKAGE is invalid. [jone]
  • Log errors happening while handling errors. [jone]
  • Make get_ignore_regex() look in a default location for the ignore file. [lgraf]

1.1.5 (2014-08-11)

  • Fix empty message syntax in XML. [jone]

1.1.4 (2014-03-18)

  • Added regex filter for exception messages. [lknoepfel]

1.1.3 (2013-09-12)

  • Fix TypeError with Python 2.6 and Plone. [jone]

1.1.2 (2013-09-02)

  • Plone: refactor cleanups to cleanup cookies in all places. [jone]

1.1.1 (2013-09-02)

  • Plone: send component and action too. [jone]
  • Plone: remove keys containing “pass” from request data and session cookie. We should not send the users password on registration / login failures. [jone]
  • Plone: add errbit-make-error for testing the connection. [jone]

1.1.0 (2013-08-28)

  • Implement urllib2 HTTP client. [jone]
  • Implement urllib HTTP client. [jone]
  • Refactor HTTP posting and add ERRBIT_HTTP_CLIENT environment variable for choosing a different implementation. [jone]

1.0.0 (2013-08-27)

  • Initial implementation. [jone]
Release History

Release History

1.4.0

This version

History Node

TODO: Figure out how to actually get changelog content.

Changelog content for this version goes here.

Donec et mollis dolor. Praesent et diam eget libero egestas mattis sit amet vitae augue. Nam tincidunt congue enim, ut porta lorem lacinia consectetur. Donec ut libero sed arcu vehicula ultricies a non tortor. Lorem ipsum dolor sit amet, consectetur adipiscing elit.

Show More

1.3.1

History Node

TODO: Figure out how to actually get changelog content.

Changelog content for this version goes here.

Donec et mollis dolor. Praesent et diam eget libero egestas mattis sit amet vitae augue. Nam tincidunt congue enim, ut porta lorem lacinia consectetur. Donec ut libero sed arcu vehicula ultricies a non tortor. Lorem ipsum dolor sit amet, consectetur adipiscing elit.

Show More

1.3.0

History Node

TODO: Figure out how to actually get changelog content.

Changelog content for this version goes here.

Donec et mollis dolor. Praesent et diam eget libero egestas mattis sit amet vitae augue. Nam tincidunt congue enim, ut porta lorem lacinia consectetur. Donec ut libero sed arcu vehicula ultricies a non tortor. Lorem ipsum dolor sit amet, consectetur adipiscing elit.

Show More

1.2.1

History Node

TODO: Figure out how to actually get changelog content.

Changelog content for this version goes here.

Donec et mollis dolor. Praesent et diam eget libero egestas mattis sit amet vitae augue. Nam tincidunt congue enim, ut porta lorem lacinia consectetur. Donec ut libero sed arcu vehicula ultricies a non tortor. Lorem ipsum dolor sit amet, consectetur adipiscing elit.

Show More

1.2.0

History Node

TODO: Figure out how to actually get changelog content.

Changelog content for this version goes here.

Donec et mollis dolor. Praesent et diam eget libero egestas mattis sit amet vitae augue. Nam tincidunt congue enim, ut porta lorem lacinia consectetur. Donec ut libero sed arcu vehicula ultricies a non tortor. Lorem ipsum dolor sit amet, consectetur adipiscing elit.

Show More

1.1.5

History Node

TODO: Figure out how to actually get changelog content.

Changelog content for this version goes here.

Donec et mollis dolor. Praesent et diam eget libero egestas mattis sit amet vitae augue. Nam tincidunt congue enim, ut porta lorem lacinia consectetur. Donec ut libero sed arcu vehicula ultricies a non tortor. Lorem ipsum dolor sit amet, consectetur adipiscing elit.

Show More

1.1.4

History Node

TODO: Figure out how to actually get changelog content.

Changelog content for this version goes here.

Donec et mollis dolor. Praesent et diam eget libero egestas mattis sit amet vitae augue. Nam tincidunt congue enim, ut porta lorem lacinia consectetur. Donec ut libero sed arcu vehicula ultricies a non tortor. Lorem ipsum dolor sit amet, consectetur adipiscing elit.

Show More

1.1.3

History Node

TODO: Figure out how to actually get changelog content.

Changelog content for this version goes here.

Donec et mollis dolor. Praesent et diam eget libero egestas mattis sit amet vitae augue. Nam tincidunt congue enim, ut porta lorem lacinia consectetur. Donec ut libero sed arcu vehicula ultricies a non tortor. Lorem ipsum dolor sit amet, consectetur adipiscing elit.

Show More

1.1.2

History Node

TODO: Figure out how to actually get changelog content.

Changelog content for this version goes here.

Donec et mollis dolor. Praesent et diam eget libero egestas mattis sit amet vitae augue. Nam tincidunt congue enim, ut porta lorem lacinia consectetur. Donec ut libero sed arcu vehicula ultricies a non tortor. Lorem ipsum dolor sit amet, consectetur adipiscing elit.

Show More

1.1.1

History Node

TODO: Figure out how to actually get changelog content.

Changelog content for this version goes here.

Donec et mollis dolor. Praesent et diam eget libero egestas mattis sit amet vitae augue. Nam tincidunt congue enim, ut porta lorem lacinia consectetur. Donec ut libero sed arcu vehicula ultricies a non tortor. Lorem ipsum dolor sit amet, consectetur adipiscing elit.

Show More

1.1.0

History Node

TODO: Figure out how to actually get changelog content.

Changelog content for this version goes here.

Donec et mollis dolor. Praesent et diam eget libero egestas mattis sit amet vitae augue. Nam tincidunt congue enim, ut porta lorem lacinia consectetur. Donec ut libero sed arcu vehicula ultricies a non tortor. Lorem ipsum dolor sit amet, consectetur adipiscing elit.

Show More

1.0.0

History Node

TODO: Figure out how to actually get changelog content.

Changelog content for this version goes here.

Donec et mollis dolor. Praesent et diam eget libero egestas mattis sit amet vitae augue. Nam tincidunt congue enim, ut porta lorem lacinia consectetur. Donec ut libero sed arcu vehicula ultricies a non tortor. Lorem ipsum dolor sit amet, consectetur adipiscing elit.

Show More

Download Files

Download Files

TODO: Brief introduction on what you do with files - including link to relevant help section.

File Name & Checksum SHA256 Checksum Help Version File Type Upload Date
errbit-1.4.0.tar.gz (20.5 kB) Copy SHA256 Checksum SHA256 Source Jan 10, 2016

Supported By

WebFaction WebFaction Technical Writing Elastic Elastic Search Pingdom Pingdom Monitoring Dyn Dyn DNS HPE HPE Development Sentry Sentry Error Logging CloudAMQP CloudAMQP RabbitMQ Heroku Heroku PaaS Kabu Creative Kabu Creative UX & Design Fastly Fastly CDN DigiCert DigiCert EV Certificate Rackspace Rackspace Cloud Servers DreamHost DreamHost Log Hosting