SILENT KILLERPanel

Current Path: > > opt > cloudlinux > venv > lib64 > python3.11 > site-packages > sentry_sdk > > integrations


Operation   : Linux premium131.web-hosting.com 4.18.0-553.44.1.lve.el8.x86_64 #1 SMP Thu Mar 13 14:29:12 UTC 2025 x86_64
Software     : Apache
Server IP    : 162.0.232.56 | Your IP: 216.73.216.111
Domains      : 1034 Domain(s)
Permission   : [ 0755 ]

Files and Folders in: //opt/cloudlinux/venv/lib64/python3.11/site-packages/sentry_sdk//integrations

NameTypeSizeLast ModifiedActions
__pycache__ Directory - -
django Directory - -
grpc Directory - -
opentelemetry Directory - -
redis Directory - -
spark Directory - -
__init__.py File 6827 bytes April 17 2025 13:10:59.
_wsgi_common.py File 4537 bytes April 17 2025 13:10:59.
aiohttp.py File 11553 bytes April 17 2025 13:10:59.
argv.py File 963 bytes April 17 2025 13:10:59.
arq.py File 6737 bytes April 17 2025 13:10:59.
asgi.py File 11821 bytes April 17 2025 13:10:59.
asyncio.py File 3049 bytes April 17 2025 13:10:59.
atexit.py File 1846 bytes April 17 2025 13:10:59.
aws_lambda.py File 15815 bytes April 17 2025 13:10:59.
beam.py File 5689 bytes April 17 2025 13:10:59.
boto3.py File 4542 bytes April 17 2025 13:10:59.
bottle.py File 6471 bytes April 17 2025 13:10:59.
celery.py File 19100 bytes April 17 2025 13:10:59.
chalice.py File 4769 bytes April 17 2025 13:10:59.
cloud_resource_context.py File 6755 bytes April 17 2025 13:10:59.
dedupe.py File 1184 bytes April 17 2025 13:10:59.
excepthook.py File 2260 bytes April 17 2025 13:10:59.
executing.py File 2041 bytes April 17 2025 13:10:59.
falcon.py File 7984 bytes April 17 2025 13:10:59.
fastapi.py File 4496 bytes April 17 2025 13:10:59.
flask.py File 7907 bytes April 17 2025 13:10:59.
gcp.py File 8213 bytes April 17 2025 13:10:59.
gnu_backtrace.py File 2930 bytes April 17 2025 13:10:59.
httpx.py File 5005 bytes April 17 2025 13:10:59.
huey.py File 4700 bytes April 17 2025 13:10:59.
logging.py File 9181 bytes April 17 2025 13:10:59.
loguru.py File 3051 bytes April 17 2025 13:10:59.
modules.py File 2110 bytes April 17 2025 13:10:59.
pure_eval.py File 4554 bytes April 17 2025 13:10:59.
pymongo.py File 6007 bytes April 17 2025 13:10:59.
pyramid.py File 7442 bytes April 17 2025 13:10:59.
quart.py File 7377 bytes April 17 2025 13:10:59.
rq.py File 5411 bytes April 17 2025 13:10:59.
sanic.py File 11326 bytes April 17 2025 13:10:59.
serverless.py File 1975 bytes April 17 2025 13:10:59.
socket.py File 2945 bytes April 17 2025 13:10:59.
sqlalchemy.py File 4244 bytes April 17 2025 13:10:59.
starlette.py File 23211 bytes April 17 2025 13:10:59.
starlite.py File 10089 bytes April 17 2025 13:10:59.
stdlib.py File 8251 bytes April 17 2025 13:10:59.
threading.py File 2937 bytes April 17 2025 13:10:59.
tornado.py File 7342 bytes April 17 2025 13:10:59.
trytond.py File 1745 bytes April 17 2025 13:10:59.
wsgi.py File 9581 bytes April 17 2025 13:10:59.

Reading File: //opt/cloudlinux/venv/lib64/python3.11/site-packages/sentry_sdk//integrations/trytond.py

import sentry_sdk.hub
import sentry_sdk.utils
import sentry_sdk.integrations
import sentry_sdk.integrations.wsgi
from sentry_sdk._types import TYPE_CHECKING

from trytond.exceptions import TrytonException  # type: ignore
from trytond.wsgi import app  # type: ignore

if TYPE_CHECKING:
    from typing import Any


# TODO: trytond-worker, trytond-cron and trytond-admin intergations


class TrytondWSGIIntegration(sentry_sdk.integrations.Integration):
    identifier = "trytond_wsgi"

    def __init__(self):  # type: () -> None
        pass

    @staticmethod
    def setup_once():  # type: () -> None
        app.wsgi_app = sentry_sdk.integrations.wsgi.SentryWsgiMiddleware(app.wsgi_app)

        def error_handler(e):  # type: (Exception) -> None
            hub = sentry_sdk.hub.Hub.current

            if hub.get_integration(TrytondWSGIIntegration) is None:
                return
            elif isinstance(e, TrytonException):
                return
            else:
                # If an integration is there, a client has to be there.
                client = hub.client  # type: Any
                event, hint = sentry_sdk.utils.event_from_exception(
                    e,
                    client_options=client.options,
                    mechanism={"type": "trytond", "handled": False},
                )
                hub.capture_event(event, hint=hint)

        # Expected error handlers signature was changed
        # when the error_handler decorator was introduced
        # in Tryton-5.4
        if hasattr(app, "error_handler"):

            @app.error_handler
            def _(app, request, e):  # type: ignore
                error_handler(e)

        else:
            app.error_handlers.append(error_handler)

SILENT KILLER Tool