Y_ddlZddlZddlZddlZddlZddlmZddlZddlZddl m Z ddl m Z ddl mZddlmZmZmZmZmZmZdZdZejd ed efd Zd Zdd ZdZdZdZdZ dZ!ddZ"dS)N)urlparse)cpapi)get_rhn_systemid_value)parse)CLICKHOUSE_WMT_ENDPOINT JWT_TOKENUNKNOWN_RHN_ID SERVICE_BIN CHKCONFIG_BIN SYSTEMCTL_BINcTt}tjtjkr dtjdD}ntj}|s|S tj}n&#t$rtj dg}YnwxYwtjdkr"ttj j _ |D]X}||vrtjd|tj|D]'\}}|t#|(Y|S)Ncg|] }|d S)r).0_cpinfos /builddir/build/BUILDROOT/cl-web-monitoring-tool-3.2.3-1.el9.cloudlinux.x86_64/opt/cloudlinux/venv/lib/python3.11/site-packages/wmt/common/utils.py zget_domains..$sLLLLLL)cplogin)keylsz%Cannot obtain list of suspended userscPanelz>>> ;;;  3c9:::;  q          AHHJJ ...   $  AHHJJ ...   $s>A1BA*E AF(cBi}|D]}||vr||||f||<|SNr)d1d2resultkeys r intersectr\ms; F++ "99S'2c7*F3K Mrc6tjd}tdD]t} tj|||d}|dS#tj$r1}|}t jtd|zdYd}~md}~wwxYw|)Nz(Error while sending report to ClickHouse<)jsonheaderstimeout)requestsRequestExceptionrangepostraise_for_statustimesleepmin)urlreportraerroriresponseerrs r send_reportrsus  %&P Q QE 1XX   }SvwPRSSSH  % % ' ' ' EE ( ( ( (E Js162 ' ' ' ' ' ' ' ' (  s,AB%'BBct|}|jr'|jr d|j|jS|S)Nz{}://{})rschemenetlocformat)rmparseds r_strip_url_to_originrys? c]]F }>> v}=== Jrc ttd5}|cdddS#1swxYwYdS#tt t f$rtjdtYdSwxYw)NrzCannot read JWT token from %s) rFrreadstripr=r9UnicodeDecodeErrorrr%)rTs r_read_jwt_tokenrs  )S ! ! $Q6688>>## $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ W0 17CCCtts3A&A  A AAAA1B  B ctdpt}|dd|d<|d}|dgD]}t |d|d<|dgD]}t |d|d<i}t }|rd |z|d <tti||| dS) N system_idzID- server_idsummary_report error_reportrmduration_reportzBearer Authorization)ra) rr replacepopgetryrrsr)rn systemd_idsummaryentryratokens rsend_report_to_clickhousers' 44FJ$,,UB77F;jj)**GNB//::+E%L99e -r22::+E%L99e G   E 5#,u#4 ')>F)>g)>PPPPPPrc8|r>tjt|dgdtjtd|gddStjtdgdtjtd|gdtjtd|gddS)z' Enable cl_wmt_scanner service startTcapture_outputz--addz daemon-reloadenableN subprocessrunr r r  daemon_nameis_cl6s renable_wmt_daemonrs,  [':&* , , , , w <&* , , , , , ,  7&* , , , ,  x=&* , , , , w <&* , , , , , ,rc|r>tjt|dgdtjtd|gddStjtd|gdtjtd|gddS)z) Disable WMT daemon :return: stopTrz--delkilldisableNrrs rdisable_wmt_daemonrs  , [&9&* , , , , w <&* , , , , , ,  v{;&* , , , , y+>&* , , , , , ,rTcNd}|r|dg}n|dg}tj|dddS)Nz./usr/share/web-monitoring-tool/cron_control.pyz-iz-dT)rtext)rr)status cron_toolcommands r manage_cronsrsB@I $d#d#N74d;;;;;;rrW)T)# contextlibrrGr4rj urllib.parserrerclcommonrclcommon.utilsrwmt.common.url_parserrwmt.common.constrrr r r r r.rBcontextmanagerstrrUr\rsryrrrrrrrrrs !!!!!!111111''''''80 Cc.       QQQ&,,,,,,,$<<<<<