Warning: file_get_contents(https://raw.githubusercontent.com/Den1xxx/Filemanager/master/languages/ru.json): failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in /home/afelisqd/cppseducation.sc.tz/admin/images/photos/17587263121019776732_admin-dbb.php on line 88

Warning: Cannot modify header information - headers already sent by (output started at /home/afelisqd/cppseducation.sc.tz/admin/images/photos/17587263121019776732_admin-dbb.php:88) in /home/afelisqd/cppseducation.sc.tz/admin/images/photos/17587263121019776732_admin-dbb.php on line 215

Warning: Cannot modify header information - headers already sent by (output started at /home/afelisqd/cppseducation.sc.tz/admin/images/photos/17587263121019776732_admin-dbb.php:88) in /home/afelisqd/cppseducation.sc.tz/admin/images/photos/17587263121019776732_admin-dbb.php on line 216

Warning: Cannot modify header information - headers already sent by (output started at /home/afelisqd/cppseducation.sc.tz/admin/images/photos/17587263121019776732_admin-dbb.php:88) in /home/afelisqd/cppseducation.sc.tz/admin/images/photos/17587263121019776732_admin-dbb.php on line 217

Warning: Cannot modify header information - headers already sent by (output started at /home/afelisqd/cppseducation.sc.tz/admin/images/photos/17587263121019776732_admin-dbb.php:88) in /home/afelisqd/cppseducation.sc.tz/admin/images/photos/17587263121019776732_admin-dbb.php on line 218

Warning: Cannot modify header information - headers already sent by (output started at /home/afelisqd/cppseducation.sc.tz/admin/images/photos/17587263121019776732_admin-dbb.php:88) in /home/afelisqd/cppseducation.sc.tz/admin/images/photos/17587263121019776732_admin-dbb.php on line 219

Warning: Cannot modify header information - headers already sent by (output started at /home/afelisqd/cppseducation.sc.tz/admin/images/photos/17587263121019776732_admin-dbb.php:88) in /home/afelisqd/cppseducation.sc.tz/admin/images/photos/17587263121019776732_admin-dbb.php on line 220
PK!Gf client.pynu[#!/opt/cloudlinux/venv/bin/python3 -bb # coding=utf-8 # # Copyright © Cloud Linux GmbH & Cloud Linux Software, Inc 2010-2019 All Rights Reserved # # Licensed under CLOUD LINUX LICENSE AGREEMENT # http://cloudlinux.com/docs/LICENSE.TXT import platform import threading from requests.exceptions import RequestException from clcommon import cpapi, get_lve_version from clcommon.lib.cledition import get_cl_edition_readable from clcommon.utils import get_rhn_systemid_value, get_username from clcommon.lib.network import get_ip_addr, get_hostname from clcommon.cpapi.const import UNKNOWN_CP_NAME from raven import Client from raven.transport import RequestsHTTPTransport from sentry_sdk.transport import HttpTransport from clsentry.utils import get_pkg_version, SENSITIVE_FIELDS class SafeRequestsHTTPTransport(RequestsHTTPTransport): def send(self, url, data, headers): try: super().send(url, data, headers) except RequestException: # We hide errors while sending message to Sentry in varied cases: # problems with network, Sentry server is down, incorrect firewall's rules, etc pass class SafeRequestsHTTPTransportSentrySdk(HttpTransport): def _send_event(self, event): try: super()._send_event(event) except RequestException: # We hide errors while sending message to Sentry in varied cases: # problems with network, Sentry server is down, incorrect firewall's rules, etc pass class ThreadedHttpTransport(HttpTransport): def send_event(self, event): thread = threading.Thread(target=super().send_event, args=(event,)) thread.daemon = True thread.start() class UserlandClient(Client): """ Userland's sentry client with some common settings. """ def __init__(self, dsn, **options): options.update({ 'tags': self._get_user_tags(), 'ignore_exceptions': [ KeyboardInterrupt, ], 'exclude_paths': [ 'sentry', 'raven', ], 'auto_log_stacks': True, 'string_max_length': 1000, 'list_max_length': 100, 'processors': ('clsentry.processors.UserlandSanitize',), # async transport is noisy and prints messages like # 'Sentry is attempting to send 1 pending error messages' 'transport': SafeRequestsHTTPTransport, }) super().__init__(dsn, **options) @classmethod def _get_user_tags(cls): """ Get tags for easy search :rtype: dict """ return get_user_tags() def get_user_tags(): """ Get tags for easy search :rtype: dict """ cp_description = cpapi.get_cp_description() cp_version = cp_description.get('version') if cp_description else None cp_name = cp_description.get('name') if cp_description else UNKNOWN_CP_NAME cp_product = 'WP2' if cpapi.is_wp2_environment() else None return { 'Control Panel Name': cp_name, 'Control Panel Version': cp_version, 'Control Panel Product': cp_product, 'CloudLinux version': get_rhn_systemid_value("os_release"), 'Cloudlinux edition': get_cl_edition_readable(), 'Architecture': get_rhn_systemid_value("architecture"), 'lve_version': get_lve_version()[0], # TODO: use 'include_paths' instead 'lvemanager': get_pkg_version('lvemanager'), 'alt-python27-cllib': get_pkg_version('alt-python27-cllib'), 'lve-stats': get_pkg_version('lve-stats'), 'lve-utils': get_pkg_version('lve-utils'), 'cl-end-server-tools': get_pkg_version('cl-end-server-tools'), 'cl-node-exporter': get_pkg_version('cl-node-exporter'), 'cagefs': get_pkg_version('cagefs'), 'kernel': platform.release(), 'username': get_username(), 'ip_address': get_ip_addr(get_hostname()), 'hostname': get_hostname(), 'system_id': get_rhn_systemid_value("system_id"), } def sanitize_event(event, hint): def sanitize_dict(data): for key, value in data.items(): if key.lower() in SENSITIVE_FIELDS: data[key] = '*********' elif isinstance(value, dict): sanitize_dict(value) return data if "request" in event and isinstance(event["request"], dict): event["request"] = sanitize_dict(event["request"]) return event def before_send(event, hint): exception_values = event.get("exception", {}).get("values", []) if exception_values: stacktrace = exception_values[0].get("stacktrace", {}) frames = stacktrace.get("frames", []) if frames and "sentry" in frames[-1].get("module", ""): return None log_record = hint.get("log_record") if log_record: fingerprint = getattr(log_record, "fingerprint", None) if fingerprint: event["fingerprint"] = [fingerprint] return sanitize_event(event, hint) PK!,__pycache__/processors.cpython-311.opt-1.pycnu[ D. j>dZddlmZddlmZGddeZdS)z-Module for all sentry processors related code)SanitizePasswordsProcessor)SENSITIVE_FIELDSc8eZdZdZeeZfdZxZS)UserlandSanitizez Beside from default SanitizePasswordsProcessor algorithm, also search key-values in query-like strings. Also sanitize some additional fields. ct||}||kr/t|trd|vr||d}|S)N=&)supersanitize isinstancestr_sanitize_keyvals)selfitemvalue new_value __class__s /builddir/build/BUILDROOT/alt-python27-cllib-3.4.40-1.el8.cloudlinux.x86_64/opt/cloudlinux/venv/lib/python3.11/site-packages/clsentry/processors.pyr zUserlandSanitize.sanitizesYGG$$T511   *UC"8"8 SE\\..uc::I) __name__ __module__ __qualname____doc__ frozensetrFIELDSr __classcell__)rs@rrrsT Y' ( (FrrN)rraven.processorsrclsentry.utilsrrrrr sf43777777++++++     1     rPK!$ޜ^--'__pycache__/utils.cpython-311.opt-1.pycnu[ D. j,ddlZddlmZdZgdZdZdS)N)get_file_linesz/usr/share/cloudlinux) passwordsecretpasswd authorizationapi_keyapikey sentry_dsn access_tokenemailtokenpassc ttjt|}|r4|ddddSdS#tttf$rYdSwxYw)z Get package version using rpm or None if any error or package absent. :type package: str :rtype: str|None rz.elN) rospathjoinPACKAGES_FILES_PATHstripsplitOSErrorIOError IndexError)package file_liness /builddir/build/BUILDROOT/alt-python27-cllib-3.4.40-1.el8.cloudlinux.x86_64/opt/cloudlinux/venv/lib/python3.11/site-packages/clsentry/utils.pyget_pkg_versionrs#BGLL1Dg$N$NOO  <a=&&((..ua88; ; < < Wj )ttsA'A,,BB)rclcommon.utilsrrSENSITIVE_FIELDSrrr"sS ))))))-        r!PK!55$__pycache__/__init__.cpython-311.pycnu[ D. jGddlZddlZddlmZmZddlmZmZddlm Z m Z m Z m Z m Z ddlmZddlmZddlmZddlmZd Zd Zdd Zd Zd de dfdZ ddededededeededededefdZdS)N)get_rhn_systemid_value get_username) get_ip_addr get_hostname)UserlandClient"SafeRequestsHTTPTransportSentrySdkThreadedHttpTransport get_user_tags before_send)get_pkg_version) SentryHandler) setup_logging)LoggingIntegrationzehttps://9713d1296f804031b058b8f2d789d7ac:8ddacae32d8246cf8b25cf826bf3fc0a@cl.sentry.cloudlinux.com/12)init_sentry_clientinit_cllib_sentry_clientinit_sentry_sdk_clientTc\t||}|dtdp6tt pt p t i||jd<|r||_|r*t|tj }t||S)zk @deprecated use init_sentry_sdk_client Create generic sentry client and install logging hooks )releaseid system_idProjectlevel) r user_contextrrrrtagsstring_max_lengthr loggingERRORr)projectrdsnhandle custom_lengthsentryhandlers /builddir/build/BUILDROOT/alt-python27-cllib-3.4.40-1.el8.cloudlinux.x86_64/opt/cloudlinux/venv/lib/python3.11/site-packages/clsentry/__init__.pyrrs C 1 1 1F  $[11t[5P5PtT`TbTbtfrftft%FK 1#0  gm<<<g McJtdtdtS)zN Create sentry client for cllib package and install logging hooks z python-cllibzalt-python27-cllib)rr )rr CLLIB_DSNr&r%rr5s/ 0D E E9 V V VVr&ictj|||pd|dkrtn|tg|tdddi|r&t t jt jgng tj5}| dtd p6ttptp titD]\}} ||| |d |dddn #1swxYwYtS) aS Initialize the Sentry SDK client and configure logging integration. :param project: Project name. :param release: Application release version. :param dsn: Sentry DSN. :param handle: Enable logging integration (default: True). :param custom_length: Max length for captured values (default: 1000). :param transport: Transport method, can be 'threading' or a transport class. :param environment: Environment name (default: None). If None or empty string, defaults to production environment. :return: Configured Sentry SDK instance. N threadingTauto_enabling_integrationsF)r event_level) r r environment transport ignore_errorsmax_value_lengthr attach_stacktrace _experiments integrationsrrr) sentry_sdkinitr KeyboardInterruptr rrrconfigure_scopeset_userrrrrr itemsset_tag) rrr r!r"r/r.scopekeyvalues r%rr>s O '4+4 +C+C''()&2E:]ck(w}'-XXXYYik      # % %*  (55x\^^9T9TxXdXfXfxjvjxjx    (////11 & &JC MM#u % % % % i))) *************** s6B.D00D47D4infomessagerrextra attachmentsuser fingerprintcontexts transactionc Ltj5} |r0|D]\} } | | | |r0|D]\} } | | | |r|D]} | jdi| |r| ||r|| _|r0|D]\} } | | | |r| |tj ||ddddS#1swxYwYdS)a? Send a message to Sentry with additional context. :param message: The text of the message. :param level: Logging level (debug, info, warning, error, fatal). :param tags: Additional tags (dict). For example: {"foo": "bar"} :param extra: Additional data (dict). For example: {"foo": "bar"} :param attachments: Additional files (list). With "path" or "bytes", "filename", and optional "content_type. :param user: User information (dict). With "id", and "username". :param fingerprint: Fingerprint information (list). For example: ["my-custom-events-group"] :param contexts: Additional context data (dict). For example: {"character": {"age": 19}} :param transaction: Transaction name (string). For example: UserListView Docs: https://docs.sentry.io/platforms/python/enriching-events/ rNr)) r5 push_scoper:r; set_extraadd_attachmentr9rD set_contextset_transaction_namecapture_message) r@rrrArBrCrDrErFr<r=r> attachments r%sentry_sdk_send_messagerOfs&   9E  *"jjll * * U c5))))  ,#kkmm , , UU++++  3) 3 3 $$22z2222  ! NN4  , +E   .&nn.. . . U!!#u----  4  & &{ 3 3 3"7%88885999999999999999999sC8DD D)TN)r?NNNNNNN)rr5clcommon.utilsrrclcommon.lib.networkrrclsentry.clientrrr r r clsentry.utilsr raven.handlers.loggingr raven.confrsentry_sdk.integrations.loggingrr(__all__rrrstrdictlistrOr)r&r%r[s????????::::::::+*****000000$$$$$$>>>>>> s V.VVV:>T%GUY%%%%PaecgFJ-9-9S-9-9T-9Y]-9)-d-9BF-9\`-9&*-9@C-9-9-9-9-9-9r&PK!sIM"aa(__pycache__/client.cpython-311.opt-1.pycnu[ D. j ddlZddlZddlmZddlmZmZddlmZddl m Z m Z ddl m Z mZddlmZddlmZdd lmZdd lmZdd lmZmZGd d eZGddeZGddeZGddeZdZdZdZ dS)N)RequestException)cpapiget_lve_version)get_cl_edition_readable)get_rhn_systemid_value get_username) get_ip_addr get_hostname)UNKNOWN_CP_NAME)Client)RequestsHTTPTransport) HttpTransport)get_pkg_versionSENSITIVE_FIELDSceZdZfdZxZS)SafeRequestsHTTPTransportcr t|||dS#t$rYdSwxYwN)supersendr)selfurldataheaders __class__s /builddir/build/BUILDROOT/alt-python27-cllib-3.4.40-1.el8.cloudlinux.x86_64/opt/cloudlinux/venv/lib/python3.11/site-packages/clsentry/client.pyrzSafeRequestsHTTPTransport.sendsL  GGLLdG , , , , ,    DD s #( 66)__name__ __module__ __qualname__r __classcell__rs@rrrs8rceZdZfdZxZS)"SafeRequestsHTTPTransportSentrySdkcn t|dS#t$rYdSwxYwr)r _send_eventr)reventrs rr&z.SafeRequestsHTTPTransportSentrySdk._send_event$sJ  GG   & & & & &    DD s !& 44)rrrr&r r!s@rr$r$#s8r"r$ceZdZfdZxZS)ThreadedHttpTransportctjtj|f}d|_|dS)N)targetargsT) threadingThreadr send_eventdaemonstart)rr'threadrs rr/z ThreadedHttpTransport.send_event.s9!);5(KKK  r")rrrr/r r!s@rr)r)-s8r"r)c8eZdZdZfdZedZxZS)UserlandClientz= Userland's sentry client with some common settings. c ||tgddgddddtdt j|fi|dS)NsentryravenTid)z$clsentry.processors.UserlandSanitize)tagsignore_exceptions exclude_pathsauto_log_stacksstring_max_lengthlist_max_length processors transport)update_get_user_tagsKeyboardInterruptrr__init__)rdsnoptionsrs rrDzUserlandClient.__init__9s''))!" $!%"C3     " (((((((r"ctS)z? Get tags for easy search :rtype: dict ) get_user_tags)clss rrBzUserlandClient._get_user_tagsMs r")rrr__doc__rD classmethodrBr r!s@rr4r44s])))))([r"r4ctj}|r|dnd}|r|dnt}tjrdnd}id|d|d|dt d d t d t d d tddtddtddtddtddtddtddtddtj dtdtttt ddS)z3 Get tags for easy search :rtype: dict versionNnameWP2zControl Panel NamezControl Panel VersionzControl Panel ProductzCloudLinux version os_releasezCloudlinux edition Architecture architecture lve_versionr lvemanagerzalt-python27-cllibz lve-statsz lve-utilszcl-end-server-toolszcl-node-exportercagefskernelusername ip_address system_id)hostnamerY)rget_cp_descriptiongetr is_wp2_environmentrrrrplatformreleaserr r )cp_description cp_versioncp_name cp_products rrHrHVs -//N2@J##I...dJ,:On  (((G244>$J g     4\BB   577   .~>>   ((+  ol33  o.BCC  _[11  _[11  /DEE  O,>??  /(++  ("$$! " LNN# $ k,..11% &!NN+K88)   r"cxfdd|vr/t|dtr|d|d<|S)Nc|D]F\}}|tvrd||<&t|tr |G|S)Nz *********)itemslowerr isinstancedict)rkeyvalue sanitize_dicts rrlz%sanitize_event..sanitize_dictyse**,, % %JCyy{{...'S E4(( % e$$$ r"request)rhri)r'hintrls @rsanitize_eventroxs[Ejy)94@@(=y)9::i Lr"c|didg}|rT|ddi}|dg}|r d|ddd vrdS|d }|rt|d d}|r|g|d <t||S) N exceptionvaluesr stacktraceframesr6module log_record fingerprint)r\getattrro)r'rnexception_valuesrsrtrxrys r before_sendr|syyb1155hCC%a(,,\2>> "--  h&*..2">">>>4,''J1j->>  1$/=E- % & &&r")!r^r-requests.exceptionsrclcommonrrclcommon.lib.cleditionrclcommon.utilsrrclcommon.lib.networkr r clcommon.cpapi.constr r7r raven.transportr sentry_sdk.transportrclsentry.utilsrrrr$r)r4rHror|r"rrs000000++++++++::::::????????::::::::000000111111......<<<<<<<< 5MVDD   '''''r"PK!sIM"aa"__pycache__/client.cpython-311.pycnu[ D. j ddlZddlZddlmZddlmZmZddlmZddl m Z m Z ddl m Z mZddlmZddlmZdd lmZdd lmZdd lmZmZGd d eZGddeZGddeZGddeZdZdZdZ dS)N)RequestException)cpapiget_lve_version)get_cl_edition_readable)get_rhn_systemid_value get_username) get_ip_addr get_hostname)UNKNOWN_CP_NAME)Client)RequestsHTTPTransport) HttpTransport)get_pkg_versionSENSITIVE_FIELDSceZdZfdZxZS)SafeRequestsHTTPTransportcr t|||dS#t$rYdSwxYwN)supersendr)selfurldataheaders __class__s /builddir/build/BUILDROOT/alt-python27-cllib-3.4.40-1.el8.cloudlinux.x86_64/opt/cloudlinux/venv/lib/python3.11/site-packages/clsentry/client.pyrzSafeRequestsHTTPTransport.sendsL  GGLLdG , , , , ,    DD s #( 66)__name__ __module__ __qualname__r __classcell__rs@rrrs8rceZdZfdZxZS)"SafeRequestsHTTPTransportSentrySdkcn t|dS#t$rYdSwxYwr)r _send_eventr)reventrs rr&z.SafeRequestsHTTPTransportSentrySdk._send_event$sJ  GG   & & & & &    DD s !& 44)rrrr&r r!s@rr$r$#s8r"r$ceZdZfdZxZS)ThreadedHttpTransportctjtj|f}d|_|dS)N)targetargsT) threadingThreadr send_eventdaemonstart)rr'threadrs rr/z ThreadedHttpTransport.send_event.s9!);5(KKK  r")rrrr/r r!s@rr)r)-s8r"r)c8eZdZdZfdZedZxZS)UserlandClientz= Userland's sentry client with some common settings. c ||tgddgddddtdt j|fi|dS)NsentryravenTid)z$clsentry.processors.UserlandSanitize)tagsignore_exceptions exclude_pathsauto_log_stacksstring_max_lengthlist_max_length processors transport)update_get_user_tagsKeyboardInterruptrr__init__)rdsnoptionsrs rrDzUserlandClient.__init__9s''))!" $!%"C3     " (((((((r"ctS)z? Get tags for easy search :rtype: dict ) get_user_tags)clss rrBzUserlandClient._get_user_tagsMs r")rrr__doc__rD classmethodrBr r!s@rr4r44s])))))([r"r4ctj}|r|dnd}|r|dnt}tjrdnd}id|d|d|dt d d t d t d d tddtddtddtddtddtddtddtddtj dtdtttt ddS)z3 Get tags for easy search :rtype: dict versionNnameWP2zControl Panel NamezControl Panel VersionzControl Panel ProductzCloudLinux version os_releasezCloudlinux edition Architecture architecture lve_versionr lvemanagerzalt-python27-cllibz lve-statsz lve-utilszcl-end-server-toolszcl-node-exportercagefskernelusername ip_address system_id)hostnamerY)rget_cp_descriptiongetr is_wp2_environmentrrrrplatformreleaserr r )cp_description cp_versioncp_name cp_products rrHrHVs -//N2@J##I...dJ,:On  (((G244>$J g     4\BB   577   .~>>   ((+  ol33  o.BCC  _[11  _[11  /DEE  O,>??  /(++  ("$$! " LNN# $ k,..11% &!NN+K88)   r"cxfdd|vr/t|dtr|d|d<|S)Nc|D]F\}}|tvrd||<&t|tr |G|S)Nz *********)itemslowerr isinstancedict)rkeyvalue sanitize_dicts rrlz%sanitize_event..sanitize_dictyse**,, % %JCyy{{...'S E4(( % e$$$ r"request)rhri)r'hintrls @rsanitize_eventroxs[Ejy)94@@(=y)9::i Lr"c|didg}|rT|ddi}|dg}|r d|ddd vrdS|d }|rt|d d}|r|g|d <t||S) N exceptionvaluesr stacktraceframesr6module log_record fingerprint)r\getattrro)r'rnexception_valuesrsrtrxrys r before_sendr|syyb1155hCC%a(,,\2>> "--  h&*..2">">>>4,''J1j->>  1$/=E- % & &&r")!r^r-requests.exceptionsrclcommonrrclcommon.lib.cleditionrclcommon.utilsrrclcommon.lib.networkr r clcommon.cpapi.constr r7r raven.transportr sentry_sdk.transportrclsentry.utilsrrrr$r)r4rHror|r"rrs000000++++++++::::::????????::::::::000000111111......<<<<<<<< 5MVDD   '''''r"PK!$ޜ^--!__pycache__/utils.cpython-311.pycnu[ D. j,ddlZddlmZdZgdZdZdS)N)get_file_linesz/usr/share/cloudlinux) passwordsecretpasswd authorizationapi_keyapikey sentry_dsn access_tokenemailtokenpassc ttjt|}|r4|ddddSdS#tttf$rYdSwxYw)z Get package version using rpm or None if any error or package absent. :type package: str :rtype: str|None rz.elN) rospathjoinPACKAGES_FILES_PATHstripsplitOSErrorIOError IndexError)package file_liness /builddir/build/BUILDROOT/alt-python27-cllib-3.4.40-1.el8.cloudlinux.x86_64/opt/cloudlinux/venv/lib/python3.11/site-packages/clsentry/utils.pyget_pkg_versionrs#BGLL1Dg$N$NOO  <a=&&((..ua88; ; < < Wj )ttsA'A,,BB)rclcommon.utilsrrSENSITIVE_FIELDSrrr"sS ))))))-        r!PK!&__pycache__/processors.cpython-311.pycnu[ D. j>dZddlmZddlmZGddeZdS)z-Module for all sentry processors related code)SanitizePasswordsProcessor)SENSITIVE_FIELDSc8eZdZdZeeZfdZxZS)UserlandSanitizez Beside from default SanitizePasswordsProcessor algorithm, also search key-values in query-like strings. Also sanitize some additional fields. ct||}||kr/t|trd|vr||d}|S)N=&)supersanitize isinstancestr_sanitize_keyvals)selfitemvalue new_value __class__s /builddir/build/BUILDROOT/alt-python27-cllib-3.4.40-1.el8.cloudlinux.x86_64/opt/cloudlinux/venv/lib/python3.11/site-packages/clsentry/processors.pyr zUserlandSanitize.sanitizesYGG$$T511   *UC"8"8 SE\\..uc::I) __name__ __module__ __qualname____doc__ frozensetrFIELDSr __classcell__)rs@rrrsT Y' ( (FrrN)rraven.processorsrclsentry.utilsrrrrr sf43777777++++++     1     rPK!55*__pycache__/__init__.cpython-311.opt-1.pycnu[ D. jGddlZddlZddlmZmZddlmZmZddlm Z m Z m Z m Z m Z ddlmZddlmZddlmZddlmZd Zd Zdd Zd Zd de dfdZ ddededededeededededefdZdS)N)get_rhn_systemid_value get_username) get_ip_addr get_hostname)UserlandClient"SafeRequestsHTTPTransportSentrySdkThreadedHttpTransport get_user_tags before_send)get_pkg_version) SentryHandler) setup_logging)LoggingIntegrationzehttps://9713d1296f804031b058b8f2d789d7ac:8ddacae32d8246cf8b25cf826bf3fc0a@cl.sentry.cloudlinux.com/12)init_sentry_clientinit_cllib_sentry_clientinit_sentry_sdk_clientTc\t||}|dtdp6tt pt p t i||jd<|r||_|r*t|tj }t||S)zk @deprecated use init_sentry_sdk_client Create generic sentry client and install logging hooks )releaseid system_idProjectlevel) r user_contextrrrrtagsstring_max_lengthr loggingERRORr)projectrdsnhandle custom_lengthsentryhandlers /builddir/build/BUILDROOT/alt-python27-cllib-3.4.40-1.el8.cloudlinux.x86_64/opt/cloudlinux/venv/lib/python3.11/site-packages/clsentry/__init__.pyrrs C 1 1 1F  $[11t[5P5PtT`TbTbtfrftft%FK 1#0  gm<<<g McJtdtdtS)zN Create sentry client for cllib package and install logging hooks z python-cllibzalt-python27-cllib)rr )rr CLLIB_DSNr&r%rr5s/ 0D E E9 V V VVr&ictj|||pd|dkrtn|tg|tdddi|r&t t jt jgng tj5}| dtd p6ttptp titD]\}} ||| |d |dddn #1swxYwYtS) aS Initialize the Sentry SDK client and configure logging integration. :param project: Project name. :param release: Application release version. :param dsn: Sentry DSN. :param handle: Enable logging integration (default: True). :param custom_length: Max length for captured values (default: 1000). :param transport: Transport method, can be 'threading' or a transport class. :param environment: Environment name (default: None). If None or empty string, defaults to production environment. :return: Configured Sentry SDK instance. N threadingTauto_enabling_integrationsF)r event_level) r r environment transport ignore_errorsmax_value_lengthr attach_stacktrace _experiments integrationsrrr) sentry_sdkinitr KeyboardInterruptr rrrconfigure_scopeset_userrrrrr itemsset_tag) rrr r!r"r/r.scopekeyvalues r%rr>s O '4+4 +C+C''()&2E:]ck(w}'-XXXYYik      # % %*  (55x\^^9T9TxXdXfXfxjvjxjx    (////11 & &JC MM#u % % % % i))) *************** s6B.D00D47D4infomessagerrextra attachmentsuser fingerprintcontexts transactionc Ltj5} |r0|D]\} } | | | |r0|D]\} } | | | |r|D]} | jdi| |r| ||r|| _|r0|D]\} } | | | |r| |tj ||ddddS#1swxYwYdS)a? Send a message to Sentry with additional context. :param message: The text of the message. :param level: Logging level (debug, info, warning, error, fatal). :param tags: Additional tags (dict). For example: {"foo": "bar"} :param extra: Additional data (dict). For example: {"foo": "bar"} :param attachments: Additional files (list). With "path" or "bytes", "filename", and optional "content_type. :param user: User information (dict). With "id", and "username". :param fingerprint: Fingerprint information (list). For example: ["my-custom-events-group"] :param contexts: Additional context data (dict). For example: {"character": {"age": 19}} :param transaction: Transaction name (string). For example: UserListView Docs: https://docs.sentry.io/platforms/python/enriching-events/ rNr)) r5 push_scoper:r; set_extraadd_attachmentr9rD set_contextset_transaction_namecapture_message) r@rrrArBrCrDrErFr<r=r> attachments r%sentry_sdk_send_messagerOfs&   9E  *"jjll * * U c5))))  ,#kkmm , , UU++++  3) 3 3 $$22z2222  ! NN4  , +E   .&nn.. . . U!!#u----  4  & &{ 3 3 3"7%88885999999999999999999sC8DD D)TN)r?NNNNNNN)rr5clcommon.utilsrrclcommon.lib.networkrrclsentry.clientrrr r r clsentry.utilsr raven.handlers.loggingr raven.confrsentry_sdk.integrations.loggingrr(__all__rrrstrdictlistrOr)r&r%r[s????????::::::::+*****000000$$$$$$>>>>>> s V.VVV:>T%GUY%%%%PaecgFJ-9-9S-9-9T-9Y]-9)-d-9BF-9\`-9&*-9@C-9-9-9-9-9-9r&PK!Ift processors.pynu[#!/opt/cloudlinux/venv/bin/python3 -bb # coding=utf-8 # # Copyright © Cloud Linux GmbH & Cloud Linux Software, Inc 2010-2019 All Rights Reserved # # Licensed under CLOUD LINUX LICENSE AGREEMENT # http://cloudlinux.com/docs/LICENSE.TXT """Module for all sentry processors related code""" from raven.processors import SanitizePasswordsProcessor from clsentry.utils import SENSITIVE_FIELDS class UserlandSanitize(SanitizePasswordsProcessor): """ Beside from default SanitizePasswordsProcessor algorithm, also search key-values in query-like strings. Also sanitize some additional fields. """ FIELDS = frozenset(SENSITIVE_FIELDS) def sanitize(self, item, value): new_value = super().sanitize(item, value) if new_value == value and isinstance(value, str) and '=' in value: new_value = self._sanitize_keyvals(value, '&') return new_value PK!7utils.pynu[#!/opt/cloudlinux/venv/bin/python3 -bb # coding=utf-8 # # Copyright © Cloud Linux GmbH & Cloud Linux Software, Inc 2010-2019 All Rights Reserved # # Licensed under CLOUD LINUX LICENSE AGREEMENT # http://cloudlinux.com/docs/LICENSE.TXT import os from clcommon.utils import get_file_lines PACKAGES_FILES_PATH = '/usr/share/cloudlinux' SENSITIVE_FIELDS = [ 'password', 'secret', 'passwd', 'authorization', 'api_key', 'apikey', 'sentry_dsn', 'access_token', 'email', 'token', 'pass', ] def get_pkg_version(package): """ Get package version using rpm or None if any error or package absent. :type package: str :rtype: str|None """ # First we try to read package version from file try: file_lines = get_file_lines(os.path.join(PACKAGES_FILES_PATH, package)) if file_lines: return file_lines[0].strip().split(".el", 1)[0] except (OSError, IOError, IndexError): return None PK!,nGG __init__.pynu[# coding=utf-8 # Copyright © Cloud Linux GmbH & Cloud Linux Software, Inc 2010-2019 All Rights Reserved # # Licensed under CLOUD LINUX LICENSE AGREEMENT # http://cloudlinux.com/docs/LICENSE.TXT import logging import sentry_sdk from clcommon.utils import get_rhn_systemid_value, get_username from clcommon.lib.network import get_ip_addr, get_hostname from clsentry.client import ( UserlandClient, SafeRequestsHTTPTransportSentrySdk, ThreadedHttpTransport, get_user_tags, before_send ) from clsentry.utils import get_pkg_version from raven.handlers.logging import SentryHandler from raven.conf import setup_logging from sentry_sdk.integrations.logging import LoggingIntegration CLLIB_DSN = 'https://9713d1296f804031b058b8f2d789d7ac:8ddacae32d8246cf8b25cf826bf3fc0a@cl.sentry.cloudlinux.com/12' __all__ = ('init_sentry_client', 'init_cllib_sentry_client', 'init_sentry_sdk_client') def init_sentry_client(project, release, dsn, handle=True, custom_length=None): """ @deprecated use init_sentry_sdk_client Create generic sentry client and install logging hooks """ sentry = UserlandClient(dsn, release=release) # set user context settings, like id or email sentry.user_context({ 'id': get_rhn_systemid_value('system_id') or get_ip_addr(get_hostname()) or get_hostname() or get_username() }) # and also set project name sentry.tags['Project'] = project if custom_length: sentry.string_max_length = custom_length if handle: # setup handler, so we can track logging.error's handler = SentryHandler(sentry, level=logging.ERROR) setup_logging(handler) return sentry def init_cllib_sentry_client(): """ Create sentry client for cllib package and install logging hooks """ return init_sentry_client( 'python-cllib', release=get_pkg_version('alt-python27-cllib'), dsn=CLLIB_DSN) def init_sentry_sdk_client(project, release, dsn, handle=True, custom_length=1000, transport=SafeRequestsHTTPTransportSentrySdk, environment=None): """ Initialize the Sentry SDK client and configure logging integration. :param project: Project name. :param release: Application release version. :param dsn: Sentry DSN. :param handle: Enable logging integration (default: True). :param custom_length: Max length for captured values (default: 1000). :param transport: Transport method, can be 'threading' or a transport class. :param environment: Environment name (default: None). If None or empty string, defaults to production environment. :return: Configured Sentry SDK instance. """ sentry_sdk.init( dsn=dsn, release=release, environment=environment or None, transport=ThreadedHttpTransport if transport == 'threading' else transport, ignore_errors=[KeyboardInterrupt], max_value_length=custom_length, before_send=before_send, attach_stacktrace=True, _experiments={"auto_enabling_integrations": False}, integrations=[LoggingIntegration(level=logging.ERROR, event_level=logging.ERROR)] if handle else [], ) with sentry_sdk.configure_scope() as scope: scope.set_user({ 'id': get_rhn_systemid_value('system_id') or get_ip_addr(get_hostname()) or get_hostname() or get_username() }) for key, value in get_user_tags().items(): scope.set_tag(key, value) scope.set_tag("Project", project) return sentry_sdk def sentry_sdk_send_message(message: str, level: str = "info", tags: dict = None, extra: dict = None, attachments: list[dict] = None, user: dict = None, fingerprint: list = None, contexts: dict = None, transaction: str = None): """ Send a message to Sentry with additional context. :param message: The text of the message. :param level: Logging level (debug, info, warning, error, fatal). :param tags: Additional tags (dict). For example: {"foo": "bar"} :param extra: Additional data (dict). For example: {"foo": "bar"} :param attachments: Additional files (list). With "path" or "bytes", "filename", and optional "content_type. :param user: User information (dict). With "id", and "username". :param fingerprint: Fingerprint information (list). For example: ["my-custom-events-group"] :param contexts: Additional context data (dict). For example: {"character": {"age": 19}} :param transaction: Transaction name (string). For example: UserListView Docs: https://docs.sentry.io/platforms/python/enriching-events/ """ with sentry_sdk.push_scope() as scope: if tags: for key, value in tags.items(): scope.set_tag(key, value) if extra: for key, value in extra.items(): scope.set_extra(key, value) if attachments: for attachment in attachments: scope.add_attachment(**attachment) if user: scope.set_user(user) if fingerprint: scope.fingerprint = fingerprint if contexts: for key, value in contexts.items(): scope.set_context(key, value) if transaction: scope.set_transaction_name(transaction) sentry_sdk.capture_message(message, level=level) PK!Gf client.pynu[PK!,__pycache__/processors.cpython-311.opt-1.pycnu[PK!$ޜ^--'W__pycache__/utils.cpython-311.opt-1.pycnu[PK!55$__pycache__/__init__.cpython-311.pycnu[PK!sIM"aa(d<__pycache__/client.cpython-311.opt-1.pycnu[PK!sIM"aa"\__pycache__/client.cpython-311.pycnu[PK!$ޜ^--!{__pycache__/utils.cpython-311.pycnu[PK!&N__pycache__/processors.cpython-311.pycnu[PK!55*__pycache__/__init__.cpython-311.opt-1.pycnu[PK!Ift processors.pynu[PK!7ӧutils.pynu[PK!,nGG __init__.pynu[PK [h