BYPASS SHELL BY ./RAZORGANZ
Server: nginx/1.20.1
System: Linux iZdzfnv9mwfppeZ 5.10.134-19.2.al8.x86_64 #1 SMP Wed Oct 29 22:47:09 CST 2025 x86_64
User: apache (48)
PHP: 8.2.30
Disabled: NONE
Upload Files
File: //usr/local/sysak/.sysak_components/tools/promiscClass.pyo
�
�]ic@s�ddlZddlZddlZddlZddlZddlZddlZddlmZddl	m
Z
ddlmZddlmZddd��YZ
dS(	i����N(tOrderedDict(t
humConvert(tiostatClass(tfsstatClasstpromiscClasscBs}eZd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Z	d�Z
d	�Zd
�Zd�Z
d�ZRS(
c		Csmg|_g|_t|d||||||j|�	|_t|d|||||||j|�
|_dS(N(t_iostatt_fsstatRtNonetfsRtio(	tselftdevnamet
utilThresht
iopsThreshtbwThreshttoptjsont
nodiskStattPattern((s8/usr/local/sysak/.sysak_components/tools/promiscClass.pyt__init__s		c
Csd}t}tj}x�|D]�}|d}d|j�krK|d}n|||ddks|d||dkr�qnt|d||d�}	t|	|�}||d|dkr�|s�||	kr�|}nt}qn|r||	kr|}qqW|S(Ntbw_wrtrestBWtbps_wrii2(RtFalsetsystmaxsizetkeystabstmintTrue(
R
tiostattfsItemtkworkertselectt
largeFoundtdifftktfsRestBwtd((s8/usr/local/sysak/.sysak_components/tools/promiscClass.pyt_selectKworkers(	


	
c	CsZt}|j|||�}|s+tdfSd||j�krX||jdg�n|ddt|d�dt|d�}i|d6|dd	6|d
d
6|dd6}xs||dD]c}||dkr�|d
|d
kr�|d|dkr�t|d	|d	�|d	<t}Pq�q�W|sH||dj|�nt||dfS(
Nitbufferiotcommt:ttgidtpidttaskRtWrbwtfiletdeviceR(RR'Rt
setdefaulttstrtmaxRtappend(	R
RR RtrepeatedR$R-tbioR&((s8/usr/local/sysak/.sysak_components/tools/promiscClass.pyt_addBioToKworker5s"
. 8cCs�d|j�kr9|jd|d�|jdd�n|rM|ddn|dd|d<|rs|d|n|d|d<|ddks�|d|dkr�|ddkr�tStS(NRRtaddediii����(RR1RR(R
tvalidtcostBWtitem((s8/usr/local/sysak/.sysak_components/tools/promiscClass.pyt_checkDeleteItemIs&"4cCs
|j}t|j�}x�|D]�\}}||j�krCqng}t||�}g|j�D]"\}}d|dkrf|^qf}	x@|D]8\}}
|
dd|}||j�krKd||j�kr�||jdg�n||dj|
jdd��|
d||dd	kr�|j||
f�q�q�n|	r�|
d|
d
kr~|j||
f�q�n|j||	|
�\}}
|j	||
|
�}|r�|j||
f�q�q�q�Wx'|D]\}}
|j
||
f�q�W|||<qW|S(NR R)R,R*R/t-RRitbw_rd(RtdictRRtitemsR1R4tgetR7R<tremove(R
tfsstatstiostatstdisktfsItemstrmListRtkeytvalR R;ttaskIR8tcosttdeleted((s8/usr/local/sysak/.sysak_components/tools/promiscClass.pyt_miscIostatFromFsstatTs:	5!c	Cs�|jj}d}tj|dt�}tjdtj��|d<|dkr_t|�dnd}xa|D]Y\}}|d|dd	ksl|d
|dd	kr�qln|d
r�t	|d
t
�jdt|�d�nd|d
<|drt	|dt
�jdt|�d�nd|d<d
|j�krM|j
d
d�nd|dkr�d|j�kr�xB|dD]3}t	|dt
�jdt|�d�|d<qzWn|dj|�qlWt|d�d	kr�|jjtj|��ndS(Ns{"time":"","mstats":[]}tobject_pairs_hooks%Y/%m/%d %H:%M:%Sttimeitstiops_rdtiops_writbps_rdRt0R/R=R R)R(R.tmstats(R	tcycleRtloadsRROtstrftimet	localtimeR2RRtreplaceRR1R4tlentwriteDataToJsontdumps(	R
RDtsecststatJsonStrt
mstatDictststSecsRHR;ti((s8/usr/local/sysak/.sysak_components/tools/promiscClass.pyt
_miscShowJsonts$"0=="4c	Cs�|jj}|jr$|jr$dS|j�}|s:dSi}x'|j�D]}|jt|��qMWt|j	�dd�dt
�}|jj�t
kr�|j|�dSddGHx�|D]�\}}|d|d	d
ks�|d|d
d
krq�n|dr6t
|dt
�jdt|�d�nd|d<|d
rst
|d
t
�jdt|�d�nd|d
<d|j�kr�t|d�nd}d|dt|d�t|d�|dt|d	�|d
|d|fGHd|dkr�d|j�kr�xg|dD]X}t
|dt
�jdt|�d�|d<d|d|d|d|dfGHq!Wq�q�WdGHdS(NRHcSs$t|dd�t|dd�S(NiRSR(tint(te((s8/usr/local/sysak/.sysak_components/tools/promiscClass.pyt<lambda>�streverses#%-20s%-8s%-12s%-16s%-12s%-12s%-8s%sR)R,RQRSRRRR0R/iRPRTR=R R(R.s+  |----%-32s WrBw:%-12s Device:%-8s File:%sR-t(scommspidsiops_rdsbps_rdsiops_wrsbps_wrsdevicesfile(R	RVRRRMtvaluestupdateR?tsortedR@RtenableJsonShowRcRRZR2R(	R
R^RDttmpR&RHR;R/Rb((s8/usr/local/sysak/.sysak_components/tools/promiscClass.pytmiscShow�sB		
0==(($"--cCs|jj�|jj�dS(N(RtconfigR	(R
((s8/usr/local/sysak/.sysak_components/tools/promiscClass.pyRo�s
cCs(|j�|jj�|jj�dS(N(tclearRtstartR	(R
((s8/usr/local/sysak/.sysak_components/tools/promiscClass.pyRq�s

cCs|jj�|jj�dS(N(RtstopR	(R
((s8/usr/local/sysak/.sysak_components/tools/promiscClass.pyRr�s
cCs|j2dS(N(R(R
((s8/usr/local/sysak/.sysak_components/tools/promiscClass.pyRp�scCs(|jj�|jj�|j�dS(N(RtshowR	Rn(R
((s8/usr/local/sysak/.sysak_components/tools/promiscClass.pyRs�s

cCs5|j�tjt|��|j�|j�dS(N(RqROtsleeptfloatRrRs(R
tinterval((s8/usr/local/sysak/.sysak_components/tools/promiscClass.pytentry�s

(t__name__t
__module__RR'R7R<RMRcRnRoRqRrRpRsRw(((s8/usr/local/sysak/.sysak_components/tools/promiscClass.pyRs					 		(					((tosRtsignaltstringROtreRtcollectionsRt
diskstatClassRRRR(((s8/usr/local/sysak/.sysak_components/tools/promiscClass.pyt<module>s