$63 GRAYBYTE WORDPRESS FILE MANAGER $96

SERVER : vnpttt-amd7f72-h1.vietnix.vn #1 SMP Fri May 24 12:42:50 UTC 2024
SERVER IP : 103.200.23.149 | ADMIN IP 216.73.216.22
OPTIONS : CRL = ON | WGT = ON | SDO = OFF | PKEX = OFF
DEACTIVATED : NONE

/opt/cloudlinux/venv/lib/python3.11/site-packages/sentry_sdk/

HOME
Current File : /opt/cloudlinux/venv/lib/python3.11/site-packages/sentry_sdk//scrubber.py
from sentry_sdk.utils import (
    capture_internal_exceptions,
    AnnotatedValue,
    iter_event_frames,
)
from sentry_sdk._compat import string_types
from sentry_sdk._types import TYPE_CHECKING

if TYPE_CHECKING:
    from sentry_sdk._types import Event
    from typing import Any
    from typing import Dict
    from typing import List
    from typing import Optional


DEFAULT_DENYLIST = [
    # stolen from relay
    "password",
    "passwd",
    "secret",
    "api_key",
    "apikey",
    "auth",
    "credentials",
    "mysql_pwd",
    "privatekey",
    "private_key",
    "token",
    "ip_address",
    "session",
    # django
    "csrftoken",
    "sessionid",
    # wsgi
    "remote_addr",
    "x_csrftoken",
    "x_forwarded_for",
    "set_cookie",
    "cookie",
    "authorization",
    "x_api_key",
    "x_forwarded_for",
    "x_real_ip",
    # other common names used in the wild
    "aiohttp_session",  # aiohttp
    "connect.sid",  # Express
    "csrf_token",  # Pyramid
    "csrf",  # (this is a cookie name used in accepted answers on stack overflow)
    "_csrf",  # Express
    "_csrf_token",  # Bottle
    "PHPSESSID",  # PHP
    "_session",  # Sanic
    "symfony",  # Symfony
    "user_session",  # Vue
    "_xsrf",  # Tornado
    "XSRF-TOKEN",  # Angular, Laravel
]


class EventScrubber(object):
    def __init__(self, denylist=None):
        # type: (Optional[List[str]]) -> None
        self.denylist = DEFAULT_DENYLIST if denylist is None else denylist
        self.denylist = [x.lower() for x in self.denylist]

    def scrub_dict(self, d):
        # type: (Dict[str, Any]) -> None
        if not isinstance(d, dict):
            return

        for k in d.keys():
            if isinstance(k, string_types) and k.lower() in self.denylist:
                d[k] = AnnotatedValue.substituted_because_contains_sensitive_data()

    def scrub_request(self, event):
        # type: (Event) -> None
        with capture_internal_exceptions():
            if "request" in event:
                if "headers" in event["request"]:
                    self.scrub_dict(event["request"]["headers"])
                if "cookies" in event["request"]:
                    self.scrub_dict(event["request"]["cookies"])
                if "data" in event["request"]:
                    self.scrub_dict(event["request"]["data"])

    def scrub_extra(self, event):
        # type: (Event) -> None
        with capture_internal_exceptions():
            if "extra" in event:
                self.scrub_dict(event["extra"])

    def scrub_user(self, event):
        # type: (Event) -> None
        with capture_internal_exceptions():
            if "user" in event:
                self.scrub_dict(event["user"])

    def scrub_breadcrumbs(self, event):
        # type: (Event) -> None
        with capture_internal_exceptions():
            if "breadcrumbs" in event:
                if "values" in event["breadcrumbs"]:
                    for value in event["breadcrumbs"]["values"]:
                        if "data" in value:
                            self.scrub_dict(value["data"])

    def scrub_frames(self, event):
        # type: (Event) -> None
        with capture_internal_exceptions():
            for frame in iter_event_frames(event):
                if "vars" in frame:
                    self.scrub_dict(frame["vars"])

    def scrub_spans(self, event):
        # type: (Event) -> None
        with capture_internal_exceptions():
            if "spans" in event:
                for span in event["spans"]:
                    if "data" in span:
                        self.scrub_dict(span["data"])

    def scrub_event(self, event):
        # type: (Event) -> None
        self.scrub_request(event)
        self.scrub_extra(event)
        self.scrub_user(event)
        self.scrub_breadcrumbs(event)
        self.scrub_frames(event)
        self.scrub_spans(event)

Current_dir [ NOT WRITEABLE ] Document_root [ WRITEABLE ]


[ Back ]
NAME
SIZE
LAST TOUCH
USER
CAN-I?
FUNCTIONS
..
--
17 Dec 2025 3.08 AM
root / root
0755
__pycache__
--
14 Aug 2025 9.25 PM
root / root
0755
crons
--
14 Aug 2025 9.24 PM
root / root
0755
integrations
--
14 Aug 2025 9.24 PM
root / root
0755
__init__.py
1.031 KB
17 Apr 2025 8.10 PM
root / root
0644
_compat.py
2.729 KB
17 Apr 2025 8.10 PM
root / root
0644
_functools.py
4.841 KB
17 Apr 2025 8.10 PM
root / root
0644
_lru_cache.py
5.264 KB
17 Apr 2025 8.10 PM
root / root
0644
_queue.py
11.003 KB
17 Apr 2025 8.10 PM
root / root
0644
_types.py
2.194 KB
17 Apr 2025 8.10 PM
root / root
0644
_werkzeug.py
3.701 KB
17 Apr 2025 8.10 PM
root / root
0644
api.py
6.047 KB
17 Apr 2025 8.10 PM
root / root
0644
attachments.py
1.769 KB
17 Apr 2025 8.10 PM
root / root
0644
client.py
22.354 KB
17 Apr 2025 8.10 PM
root / root
0644
consts.py
8.493 KB
17 Apr 2025 8.10 PM
root / root
0644
debug.py
1.105 KB
17 Apr 2025 8.10 PM
root / root
0644
envelope.py
9.366 KB
17 Apr 2025 8.10 PM
root / root
0644
hub.py
26.416 KB
17 Apr 2025 8.10 PM
root / root
0644
monitor.py
2.966 KB
17 Apr 2025 8.10 PM
root / root
0644
profiler.py
33.182 KB
17 Apr 2025 8.10 PM
root / root
0644
py.typed
0 KB
17 Apr 2025 8.10 PM
root / root
0644
scope.py
24.262 KB
17 Apr 2025 8.10 PM
root / root
0644
scrubber.py
3.802 KB
17 Apr 2025 8.10 PM
root / root
0644
serializer.py
12.974 KB
17 Apr 2025 8.10 PM
root / root
0644
session.py
5.431 KB
17 Apr 2025 8.10 PM
root / root
0644
sessions.py
5.762 KB
17 Apr 2025 8.10 PM
root / root
0644
tracing.py
29.042 KB
17 Apr 2025 8.10 PM
root / root
0644
tracing_utils.py
11.999 KB
17 Apr 2025 8.10 PM
root / root
0644
tracing_utils_py2.py
1.215 KB
17 Apr 2025 8.10 PM
root / root
0644
tracing_utils_py3.py
2.096 KB
17 Apr 2025 8.10 PM
root / root
0644
transport.py
18.135 KB
17 Apr 2025 8.10 PM
root / root
0644
utils.py
45.582 KB
17 Apr 2025 8.10 PM
root / root
0644
worker.py
4.154 KB
17 Apr 2025 8.10 PM
root / root
0644

GRAYBYTE WORDPRESS FILE MANAGER @ 2026 CONTACT ME
Static GIF