from __future__ import absolute_import from sentry_sdk.hub import Hub from sentry_sdk.integrations import Integration from sentry_sdk.scope import add_global_event_processor if False: from typing import Any from typing import Dict from typing import Tuple from typing import Iterator _installed_modules = None def _generate_installed_modules(): # type: () -> Iterator[Tuple[str, str]] try: import pkg_resources except ImportError: return for info in pkg_resources.working_set: yield info.key, info.version def _get_installed_modules(): # type: () -> Dict[str, str] global _installed_modules if _installed_modules is None: _installed_modules = dict(_generate_installed_modules()) return _installed_modules class ModulesIntegration(Integration): identifier = "modules" @staticmethod def setup_once(): # type: () -> None @add_global_event_processor def processor(event, hint): # type: (Dict[str, Any], Dict[str, Any]) -> Dict[str, Any] if Hub.current.get_integration(ModulesIntegration) is not None: event["modules"] = dict(_get_installed_modules()) return event
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 |
|