/opt/cloudlinux/venv/lib/python3.11/site-packages/lvestats/lib/__pycache__
NameSizeModeActions
cloudlinux_statistics.cpython-311.pyc328890644editdlrm
cloudlinux_statsnotifier.cpython-311.pyc76500644editdlrm
config.cpython-311.pyc55570644editdlrm
dbengine.cpython-311.pyc196610644editdlrm
db_functions.cpython-311.pyc32680644editdlrm
jsonhandler.cpython-311.pyc8530644editdlrm
lveinfolib.cpython-311.pyc599170644editdlrm
lveinfolib_gov.cpython-311.pyc174690644editdlrm
lvestats_server.cpython-311.pyc165160644editdlrm
lve_create_db.cpython-311.pyc31470644editdlrm
lve_list.cpython-311.pyc57270644editdlrm
notifications_helper.cpython-311.pyc115970644editdlrm
server_id.cpython-311.pyc76790644editdlrm
snapshot.cpython-311.pyc148680644editdlrm
uidconverter.cpython-311.pyc73410644editdlrm
ustate.cpython-311.pyc125080644editdlrm
__init__.cpython-311.pyc2590644editdlrm
Edit: /opt/cloudlinux/venv/lib/python3.11/site-packages/lvestats/lib/__pycache__/ustate.cpython-311.pyc (12508B)
§ \¾¬ô>ž¯ãó¸—ddlZddlmZmZmZddlmZddlmZm Z m Z ddl m Z ej d¦«ZGd„de¦«Zd „Zd „Zd „ZGd „d e¦«ZdS)éN)ÚDictÚListÚOptional)Ú mysql_lib)ÚcpusersÚ db_accessÚdblogin_cplogin_pairs)Ú run_commandÚustatecó—eZdZdS)ÚMySQLOperationalErrorN)Ú__name__Ú __module__Ú __qualname__©óú~/builddir/build/BUILDROOT/lve-stats-5.0.4-1.el9.x86_64/opt/cloudlinux/venv/lib/python3.11/site-packages/lvestats/lib/ustate.pyr r s€€€€€Ø€Drr c óŒ‡ —| d¦«}| d¦«}| ¦«}dddœŠ ˆ fd„|D¦«}i}d}t|¦«D�]\\}}|sŒ | dt|¦«dz ¦«}t|¦«t|¦«ko|d ¦«} | s<| dt|¦«d z ¦«}| dd ¦«t|¦«t|¦«kr@t  d |d d |td|dz ¦«|dz…ii¬¦«�nWtt||¦«¦«} | ret|  d¦«¦«} | d=n#t$rYnwxYw| ||<i||d<|| dd¦«�Œ‹|  dd¦«|  dd¦«|  dd¦«|  dd¦« | ||dt|  d¦«¦«<�Œ#ttf$r3} t  dt| ¦«¦«Yd} ~ �ŒVd} ~ wwxYw|S)a5 parse /usr/sbin/lveps -c 1 -p -d -n -x result example returned data: {504: {'CPU': '26%', 'IO': '0', 'MEM': '1', 'EP': '0', 'IOPS': 'N/A', 'PNO': '3', 'TNO': '3', 'TID': {4400: {'CPU': '26%', 'IO': 'N/A', 'MEM': '1', 'CMD': 'md5sum', 'IOPS': 'N/A'}, 4381: {'CPU': '0%', 'IO': 'N/A', 'MEM': '1', 'CMD': 'su', 'IOPS': 'N/A'}, 4382: {'CPU': '0%', 'IO': 'N/A', 'MEM': '1', 'CMD': 'bash', 'IOPS': 'N/A'}}}, 500: {'CPU': '13%', 'IO': '0', 'MEM': '1', 'EP': '0', 'IOPS': 'N/A', 'PNO': '3', 'TNO': '3', 'TID': {4266: {'CPU': '0%', 'IO': 'N/A', 'MEM': '1', 'CMD': 'su', 'IOPS': 'N/A'}, 4299: {'CPU': '13%', 'IO': 'N/A', 'MEM': '1', 'CMD': 'cat', 'IOPS': 'N/A'}, 4267: {'CPU': '0%', 'IO': 'N/A', 'MEM': '1', 'CMD': 'bash', 'IOPS': 'N/A'}}}} example of data manipulation: getting a list of user id >>> lveps_data = _parse_lveps_output() >>> user_id_list = lveps_data.keys() a list of processes tid particular user id 504 >>> user_tid_list = lveps_data[504]['TID'].keys() getting CPU load user >>> user_cpu = lveps_data[504]['CPU'] getting CPU load specific process >>> lveps_data[504]['TID'][4400] ú rÚCPUÚCMD)ÚSPEEDÚCOMcó<•—g|]}‰ ||¦«‘ŒSr)Úget)Ú.0Úcol_nameÚ replace_cols €rú z'_parse_lveps_output..<s'ø€ÐUÐUÐU¸H�K—O’O H¨hÑ7Ô7ÐUÐUÐUrNééÚzlveps output was incorrect: %sÚdataÚ lveps_lineséé)ÚextraÚIDÚTIDÚPIDÚEPÚPNOÚTNOzCan't parse lveps output: %s)ÚsplitÚpopÚ enumerateÚlenÚisdigitÚinsertÚlogÚerrorÚmaxÚdictÚzipÚintÚKeyErrorÚ ValueErrorÚstr) Ú lveps_outputr$Ú header_lineÚ columns_nameÚ lveps_dataÚuser_idÚlveps_line_indexÚ lveps_lineÚlveps_line_splitedÚhas_idÚlveps_dict_lineÚers @rÚ_parse_lveps_outputrHs%ø€ð@×$Ò$ TÑ*Ô*€KØ—/’/ !Ñ$Ô$€Kà×$Ò$Ñ&Ô&€Là!¨%Ð0Ð0€KØUÐUÐUÐUÈ ÐUÑUÔU€Là€JØ€GÝ(1°+Ñ(>Ô(>ð$Bñ$BÑ$И*Øð Ø Ø'×-Ò-¨dµC¸ Ñ4EÔ4EÈÑ4IÑJÔJÐåÐ(Ñ)Ô)­S°Ñ->Ô->Ò>ÐcÐDVÐWXÔDY×DaÒDaÑDcÔDcˆØð -Ø!+×!1Ò!1°$½¸LÑ8IÔ8IÈAÑ8MÑ!NÔ!NÐ Ø × %Ò % a¨Ñ ,Ô ,Ð ,Ý Ð!Ñ "Ô "¥c¨,Ñ&7Ô&7Ò 7Ð 7Ý �IŠIØ0ØØ  ¨{½3¸qÐBRÐUVÑBVÑ;WÔ;WÐXhÐkmÑXmÐ;mÔ/nÐoÐpð ñ ô ð ð ‰EÝ�s <Ð1CÑDÔDÑEÔEˆØ ð Bå˜/×-Ò-¨dÑ3Ô3Ñ4Ô4ˆGð Ø# EÐ*Ð*øÝð ð ð Ø�ð øøøà"1ˆJ�wÑ Ø)+ˆJ�wÔ  Ñ &Ø �wÔ × #Ò # E¨4Ñ 0Ô 0Ð 0Ñ 0à × Ò   dÑ +Ô +Ð +Ø × Ò   tÑ ,Ô ,Ð ,Ø × Ò   tÑ ,Ô ,Ð ,Ø × Ò   dÑ +Ô +Ð +ð BØN]� ˜7Ô# EÔ*­3¨×/BÒ/BÀ5Ñ/IÔ/IÑ+JÔ+JÑKÑKøÝ¥Ð)ð Bð Bð BÝ— ’ Ð8½#¸a¹&¼&ÑAÔAÐAÐAÐAÐAÐAÑAøøøøð Bøøøà Ðs*Æ/F3Æ3 GÆ?GÉ 1I=É=KÊ(J<Ê<Kcó<—t¦«}t|¦«S©N)Ú_get_lveps_outputrH©r=s rÚ get_lvepsrMhs€Ý$Ñ&Ô&€LÝ ˜|Ñ ,Ô ,Ð,rcóÖ—tgd¢d¬¦«}t|t¦«r| dd¦«}n)| dd¦« d¦«}|S)N) z/usr/sbin/lvepsz-cÚ1z-pz-dz-nz-xz-oz;id:10,ep:10,pno:10,pid:15,tno:5,tid:15,cpu:7,mem:15,com:256F)Úconvert_to_strúutf-8Úreplace)r Ú isinstanceÚbytesÚdecodeÚencoderLs rrKrKms€Ý +ð ð ð ðð !ñ !ô !€Lõ$�,¥Ñ&Ô&ðOØ#×*Ò*¨7°IÑ>Ô>ˆ ˆ à#×*Ò*¨7°IÑ>Ô>×EÒEÀgÑNÔNˆ à ÐrcóF—eZdZd„Zd„Zd„Zd„Zd„Zd„Zd„Z d„Z d d „Z d S) Ú SQLSnapshotcóH—d|_i|_t¦«|_dSrJ)Ú _mysql_connÚ_dblogin_cplogin_mapÚsetÚ _db_users©Úselfs rÚ__init__zSQLSnapshot.__init__‰s!€ØˆÔØ$&ˆÔ!Ý™œˆŒˆˆrcó.—| ¦«|SrJ)Úconnectr^s rÚ __enter__zSQLSnapshot.__enter__Žs€Ø � Š ‰ŒˆØˆ rcó.—| ¦«dSrJ)Úclose)r_Úexc_typeÚexc_valÚexc_tbs rÚ__exit__zSQLSnapshot.__exit__’s€Ø � Š ‰ Œ ˆ ˆ ˆ rcó<—t¦«}|d}|d}| dd¦«}tj|||dd¬¦«} | ¦«|_dS#tj$r"}tt|¦«¦«|‚d}~wwxYw) zB Obtain access data and connect to mysql database ÚloginÚpassÚhostÚ localhostFÚutf8mb4)rmÚuserÚpasswdÚ use_unicodeÚcharsetN) rrrÚMySQLConnectorrbrZÚ MySQLErrorr r<)r_ÚaccessÚ mysql_loginÚ mysql_passÚ mysql_hostÚ connectorrGs rrbzSQLSnapshot.connect•s±€õ‘”ˆØ˜W”oˆ ؘF”^ˆ Ø—Z’Z ¨ Ñ4Ô4ˆ ÝÔ,ØØØð Øð  ñ  ô  ˆ ð 7Ø(×0Ò0Ñ2Ô2ˆDÔ Ð Ð øÝÔ#ð 7ð 7ð 7Ý'­¨A©¬Ñ/Ô/°QÐ 6øøøøð 7øøøsÁA*Á*BÁ9BÂBcóF—tt¦«¦«|_dS)z; Refresh : map N)r7r r[r^s rÚ _refresh_mapzSQLSnapshot._refresh_map®s!€õ%)Õ)>Ñ)@Ô)@Ñ$AÔ$AˆÔ!Ð!Ð!rcó8—|j ¦«dS)z( Close Mysql connection N)rZrer^s rrezSQLSnapshot.close´s€ð Ô×ÒÑ Ô Ð Ð Ð rcóL—t¦«} |j ¦«}| d¦«| ¦«}td„|D¦«¦«}n8#t j$r&}t d|¬¦«Yd}~nd}~wwxYw|S)NzSHOW FULL PROCESSLISTc3óHK—|]}td„|D¦«¦«V—ŒdS)c3ópK—|]1}t|t¦«r| dd¦«n|V—Œ2dS)rQrRN)rSrTrU)rÚcols rú z9SQLSnapshot._raw_processlist...ÆsZèè€ððàõ7AÀÅeÑ6LÔ6LÐU�C—J’J˜w¨ Ñ2Ô2Ð2ÐRUððððððrN)Útuple)rÚrows rr‚z/SQLSnapshot._raw_processlist..Ås^èè€ððð õ ððà"ðñôñôððððððrzCError occurred during executing the `SHOW FULL PROCESSLIST` command)Úexc_info) rƒrZÚcursorÚexecuteÚfetchallrrur4Úwarning)r_Úresultr†ÚrawrGs rÚ_raw_processlistzSQLSnapshot._raw_processlistºs̀ݑ”ˆð kØÔ%×,Ò,Ñ.Ô.ˆFØ �NŠNÐ2Ñ 3Ô 3Ð 3Ø—/’/Ñ#Ô#ˆCõ ððð ð ñôñôˆFˆFøõÔ#ð kð kð kÝ �KŠKÐ]ÐhiˆKÑ jÔ jÐ jÐ jÐ jÐ jÐ jÐ jøøøøð køøøàˆ s�AA,Á,B!Á;BÂB!cóô—i}| ¦«D]`}|d}|d}|d}|dpd}|dkrŒ+|||g}| |g¦«}| |¦«|||<Œa|S)zN Group processlist by database user name :rtype: dict r ér%ér"ÚSleep)rŒrÚappend) r_Úprocess_snapshotÚ sql_tupleÚ db_usernameÚsql_cmdÚsql_timeÚ sql_queryÚ snapshot_lineÚgrouped_by_users rÚ_get_sql_process_listz!SQLSnapshot._get_sql_process_listÐs¥€ð ÐØ×.Ò.Ñ0Ô0ð <ð <ˆIØ# Aœ,ˆKØ ”lˆGØ  ”|ˆHØ! !œ Ð*¨ˆIؘ'Ò!Ð!ØØ$ h° Ð:ˆMà.×2Ò2°;ÀÑCÔCˆOØ × "Ò " =Ñ 1Ô 1Ð 1Ø,;Ð ˜[Ñ )Ð )ØÐrNcóz—| ¦«}t| ¦«¦«|jz }|rp| ¦«t  dtt|¦«¦«dd…¦«|D]}|j  |¦«Œi}|pt¦«pg}t|  ¦«¦«D]U\}}|j   |¦«} | �4| |vr0|  | g¦«} |  |¦«| || <ŒV|S)zÉ :param cplogin_lst: a list of users to retrieve data; None if the data is returned for all users registered in the control panel :return: sql queries for each user z>New database user(s) %s detected; database users map refreshedr éÿÿÿÿ)ršr\Úkeysr]r|r4Údebugr<ÚlistÚaddrÚitemsr[rÚextend) r_Ú cplogin_lstr’Ú new_db_usersÚ new_db_userÚ sql_snapshotÚ cplogin_lst_r”Úsql_snapÚ cp_usernameÚ sql_snap_s rrzSQLSnapshot.getäsU€ð ×5Ò5Ñ7Ô7ÐõÐ+×0Ò0Ñ2Ô2Ñ3Ô3°d´nÑDˆ Ø ð 0Ø × Ò Ñ Ô Ð Ý �IŠIØPÝ•D˜Ñ&Ô&Ñ'Ô'¨¨"¨Ô-ñ ô ð ð ,ð 0ð 0� Ø”×"Ò" ;Ñ/Ô/Ð/Ð/ðˆ Ø"Ð5¥g¡i¤iÐ5°2ˆ Ý%)Ð*:×*@Ò*@Ñ*BÔ*BÑ%CÔ%Cð 6ð 6Ñ !ˆK˜ØÔ3×7Ò7¸ ÑDÔDˆKØÐ&¨;¸,Ð+FÐ+Fà(×,Ò,¨[¸"Ñ=Ô=� Ø× Ò  Ñ*Ô*Ð*Ø,5� ˜[Ñ)øØÐrrJ) rrrr`rcrirbr|rerŒršrrrrrXrXˆs£€€€€€ðððð ðððððð7ð7ð7ð2BðBðBð !ð!ð!ð ððð, ð ð ð(ðððððrrX)ÚloggingÚtypingrrrÚclcommonrÚclcommon.cpapirrr Úclcommon.utilsr Ú getLoggerr4Ú Exceptionr rHrMrKÚobjectrXrrrúr³sðð€€€Ø'Ð'Ð'Ð'Ð'Ð'Ð'Ð'Ð'Ð'àÐÐÐÐÐØDÐDÐDÐDÐDÐDÐDÐDÐDÐDØ&Ð&Ð&Ð&Ð&Ð&à€gÔ˜Ñ!Ô!€ð ð ð ð ð ˜Iñ ô ð ðOðOðOðd-ð-ð-ð ððð6{ð{ð{ð{ð{�&ñ{ô{ð{ð{ð{r