from __future__ import absolute_import import os import sys import atexit from sentry_sdk.hub import Hub from sentry_sdk.utils import logger from sentry_sdk.integrations import Integration if False: from typing import Any from typing import Optional def default_callback(pending, timeout): """This is the default shutdown callback that is set on the options. It prints out a message to stderr that informs the user that some events are still pending and the process is waiting for them to flush out. """ def echo(msg): sys.stderr.write(msg + "\n") echo("Sentry is attempting to send %i pending error messages" % pending) echo("Waiting up to %s seconds" % timeout) echo("Press Ctrl-%s to quit" % (os.name == "nt" and "Break" or "C")) sys.stderr.flush() class AtexitIntegration(Integration): identifier = "atexit" def __init__(self, callback=None): # type: (Optional[Any]) -> None if callback is None: callback = default_callback self.callback = callback @staticmethod def setup_once(): # type: () -> None @atexit.register def _shutdown(): logger.debug("atexit: got shutdown signal") hub = Hub.main integration = hub.get_integration(AtexitIntegration) if integration is not None: logger.debug("atexit: shutting down client") hub.client.close(callback=integration.callback)
Name | Type | Size | Permission | Actions |
---|---|---|---|---|
__pycache__ | Folder | 0755 |
|
|
django | Folder | 0755 |
|
|
__init__.py | File | 4.14 KB | 0644 |
|
_wsgi_common.py | File | 3.58 KB | 0644 |
|
aiohttp.py | File | 3.8 KB | 0644 |
|
argv.py | File | 894 B | 0644 |
|
atexit.py | File | 1.46 KB | 0644 |
|
aws_lambda.py | File | 6.6 KB | 0644 |
|
bottle.py | File | 5.4 KB | 0644 |
|
celery.py | File | 4.32 KB | 0644 |
|
dedupe.py | File | 1.06 KB | 0644 |
|
excepthook.py | File | 1.3 KB | 0644 |
|
flask.py | File | 7.1 KB | 0644 |
|
gnu_backtrace.py | File | 2.94 KB | 0644 |
|
logging.py | File | 5.88 KB | 0644 |
|
modules.py | File | 1.21 KB | 0644 |
|
pyramid.py | File | 5.78 KB | 0644 |
|
rq.py | File | 3.2 KB | 0644 |
|
sanic.py | File | 6.9 KB | 0644 |
|
serverless.py | File | 1.21 KB | 0644 |
|
stdlib.py | File | 1.83 KB | 0644 |
|
threading.py | File | 1.56 KB | 0644 |
|
tornado.py | File | 6.24 KB | 0644 |
|
wsgi.py | File | 7.13 KB | 0644 |
|