Skip to main content

Sentry Integration for Muffin framework

Project description

Muffin-SentrySentry Integration for Muffin framework

Tests Status PYPI Version

Requirements

  • python >= 3.8

Installation

Muffin-Sentry should be installed using pip:

pip install muffin-sentry

Usage

from muffin import Application
import muffin_sentry

# Create Muffin Application
app = Application('example')

# Initialize the plugin
# As alternative: jinja2 = Jinja2(app, **options)
sentry = muffin_sentry.Plugin()
sentry.setup(app, dsn="DSN_URL")

# Use it inside your handlers

# The exception will be send to Sentry
@app.route('/unhandled')
async def catch_exception(request):
    raise Exception('unhandled')

# Capture a message by manual
@app.route('/capture_message')
async def message(request):
    sentry.capture_message('a message from app')
    return 'OK'

# Capture an exception by manual
@app.route('/capture_exception')
async def exception(request):
    sentry.capture_exception(Exception())
    return 'OK'

# Update Sentry Scope
@app.route('/update_user')
async def user(request):
    scope = sentry.current_scope.get()
    scope.set_user({'id': 1, 'email': 'example@example.com'})
    sentry.capture_exception(Exception())
    return 'OK'

Options

Format: Name – Description (default value)

dsn – Sentry DSN for your application ('')

sdk_options – Additional options for Sentry SDK Client ({}). See https://docs.sentry.io/platforms/python/configuration/options/

ignore_errors – Exception Types to Ignore ([muffin.ResponseRedirect, muffin.ResponseError])

You are able to provide the options when you are initiliazing the plugin:

sentry.setup(app, dsn='DSN_URL')

Or setup it inside Muffin.Application config using the SENTRY_ prefix:

SENTRY_DSN = 'DSN_URL'

Muffin.Application configuration options are case insensetive

Bug tracker

If you have any suggestions, bug reports or annoyances please report them to the issue tracker at https://github.com/klen/muffin-sentry/issues

Contributing

Development of Muffin-Sentry happens at: https://github.com/klen/muffin-sentry

Contributors

  • klen (Kirill Klenov)

License

Licensed under a MIT license.

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

muffin-sentry-0.4.1.tar.gz (4.9 kB view details)

Uploaded Source

Built Distribution

muffin_sentry-0.4.1-py3-none-any.whl (4.5 kB view details)

Uploaded Python 3

File details

Details for the file muffin-sentry-0.4.1.tar.gz.

File metadata

  • Download URL: muffin-sentry-0.4.1.tar.gz
  • Upload date:
  • Size: 4.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.6.1 requests/2.25.0 setuptools/50.3.2 requests-toolbelt/0.9.1 tqdm/4.53.0 CPython/3.9.0

File hashes

Hashes for muffin-sentry-0.4.1.tar.gz
Algorithm Hash digest
SHA256 e2d7a56a9a3b605f832abec23b7ddbb199a33bb8755135d108fec2e2fd0d6f96
MD5 503e05fc77731358fac8d2fe5a59c9af
BLAKE2b-256 cc14817564f840ef75c3cf5351358b9fd9d290388eedb42006f4201de8a18752

See more details on using hashes here.

File details

Details for the file muffin_sentry-0.4.1-py3-none-any.whl.

File metadata

  • Download URL: muffin_sentry-0.4.1-py3-none-any.whl
  • Upload date:
  • Size: 4.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.6.1 requests/2.25.0 setuptools/50.3.2 requests-toolbelt/0.9.1 tqdm/4.53.0 CPython/3.9.0

File hashes

Hashes for muffin_sentry-0.4.1-py3-none-any.whl
Algorithm Hash digest
SHA256 9ee7d618d6ed6e921970bccb518f8012271f20947ea3c4035adc12fb8210271b
MD5 238646e66381dadfdbfc2887f0ff1458
BLAKE2b-256 2afb5d6eaa7c658958ab0ee11eee4788507c55f92cfe73e0756a27d31565a07c

See more details on using hashes here.

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