wo4h2 dZddlZddlZddlZddlmZddlmZddlm Z ddl Z ddl Z ddl m Z ddlmZdZd Zd Zd Zd Zd ZdZedZdZdefdZdefdZde edefdZdedefdZdedefdZdZdZ defdZ!dZ"dZ#dS)z2Helper for integrate sentry in stand-alone scriptsN)suppress)Path)List)tags)sentry imunify360zimunify-antiviruszimunify360-firewallz/var/imunify360/license.jsonz!/var/imunify360/license-free.json IMUNIFYAVUNKNOWNz,/opt/imunify360/venv/share/imunify360/sentryzQhttps://6de77a2763bd40c58fc9e3a89285aaa8@im360.sentry.cloudlinux.com/3?timeout=20returnc tdS#ttf$r t cYSwxYw)z,Return dsn from the file or the default one.ascii)encoding)SENTRY_DSN_PATH read_textstripOSErrorUnicodeDecodeErrorSENTRY_DSN_DEFAULTK/opt/imunify360/venv/lib/python3.11/site-packages/defence360agent/sentry.pyget_sentry_dsnrsW"(('(::@@BBB ' ("""!!!!"s,/A  A c tt5ttfD]}tt5t |5}t j|dcdddcdddccdddS#1swxYwYdddn #1swxYwY dddn #1swxYwYtS)Nid) r ExceptionLICENSE LICENSE_FREEFileNotFoundErroropenjsonload UNKNOWN_ID)filenamefiles r get_server_idr%$s )  -- ,/ - -H+,, - -d8nn -yt, - - - - - - - - - - - - - - - --------- - - - - - - - - - - - - - - - - - - - - - - - ---------------- s^%B;B" B $ B"0B; B B"B B" B;"B& &B;)B& *B;;B?B?cmdc tj|tjtjtj}n#t$rYdSwxYw|jdkrdSt j|jS)N)stdinstdoutstderrr) subprocessrunDEVNULLPIPEr returncodeosfsdecoder))r&cps rcollect_outputr4,s{ ^ $?%     rr }r ;ry ! !!s69 AApkgc,ddd|g}t|S)Nrpmz-qz#--queryformat=%{VERSION}-%{RELEASE}r4r5r&s rget_rpm_versionr:;s $=s CC #  rc,ddd|g}t|S)Nz dpkg-queryz--showformat=${Version}z--showr8r9s rget_dpkg_versionr<@s 2Hc BC #  rc\tjd}|S)Nr)distrolinux_distributionlower) platform_oss rget_current_osrBEs'+--a0K     rct}t}|dkrttrt}nt}|SNubuntu)rBIMUNIFY360_PKGr:r IMUNIFY360)rA service_names rget_package_namerIJs< ""K!Lh?9#=#= ! rclt}|dkrt|}nt|}|SrD)rBr:r<)rHrAversions rget_service_versionrLTs9 ""Kh!,//"<00 Nrctjttj5}t }dt i|_|d||dt|tj tj D]\}}||| ddddS#1swxYwYdS)N)dsnrnamerK) sentry_sdkinitrconfigure_scoperIr%userset_tagrLr cached_fillritems)scopepackagetagvalues rconfigure_sentryr[]s)O(())))  # % %&"$$MOO,  fg&&& i!4W!=!=>>>  +----// & &JC MM#u % % % % & &&&&&&&&&&&&&&&&&&sB1C44C8;C8cftjjj}||ddSdS)Ng@)timeout)rPHubcurrentclientflush)r`s r flush_sentryrbks7 ^ # *F  S !!!!!r)$__doc__r r1r, contextlibrpathlibrtypingrr>rPdefence360agent.applicationrdefence360agent.contractsrrGr rFrrFREE_IDr"rrstrrr%r4r:r<rBrIrLr[rbrrrrks88  ,,,,,,,,,,,,  & (2   $EFFh"""""s "S "c " " " " ##   & & &"""""r