NineSec Team Shell
Server IP : 184.107.3.203  /  Your IP : 216.73.216.51
Web Server : Apache
System : Linux dedicated2.avenfashion.com.ph 4.18.0-553.40.1.el8_10.x86_64 #1 SMP Mon Feb 10 12:11:18 EST 2025 x86_64
User : adminteladeoro ( 1015)
PHP Version : 8.2.28
Disable Function : exec,passthru,shell_exec,system
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : ON
Directory (0755) :  /usr/lib/python3.6/site-packages/sos/report/plugins/__pycache__/

[  Home  ][  C0mmand  ][  Upload File  ]

Current File : //usr/lib/python3.6/site-packages/sos/report/plugins/__pycache__/shmcli.cpython-36.pyc
3

~�g��@s*ddlmZmZmZGdd�dee�ZdS)�)�Plugin�IndependentPlugin�	PluginOptc@sNeZdZdZdZdZdZdZefZe	dd	d
d�gZ
dd
�Zdd�Zdd�Z
dS)�SHMcliashmcli pulls hardware information from PowerVault/Dell
    Storage JBOD's attached to server.
    It provides information of the adapters, emms, drives,
    enclosures, fans, power supplies and the sensory data of
    temp, voltage, and current sensors.
    zDell Server Hardware Manager�shmcli�system�storage�hardwarezC/opt/dell/ServerHardwareManager/ServerHardwareManagerCLI/bin/shmcli�debugFzcapture support debug data)�defaultZdesccCsLdddg}x,|D]$}|j|j�d|��d|��d�qW|j�|j�dS)Nz
list adapterszlist physical enclosureszlist failed drives� Zshmcli_)�suggest_filename)�add_cmd_output�
shmcli_bin�collect_enclosures_list�collect_drivers_list)�self�subcmds�subcmd�r�/usr/lib/python3.6/shmcli.py�setup s
zSHMcli.setupc
s�g}|jd�}|ddkrfxJ|dj�D]:��j�}t|�dkr(|dj�dkr(|j�j�d�q(Wtt|��}dd	d
ddd
ddddg
}|j|j	�d�dd�}|ddk�r�x�|dj�dd$�D]҉�j��t
�fdd�|D��rĈd%}�d}xF|D]>}|j	�d|�d|�d|��}|j|j	d�}	|j||	d��q�W|j
d�r�|jdd�}
|j	�d|�d|��}|j|j	d�}d |
��}
|j||
|d!d"�q�Wd#S)&z  Collect info on the enclosures z	lsscsi -g�statusr�output�ZDELL�z	list emmszlist drawerszlist emm slotszlist drive slotsz	list fanszlist temp sensorszlist voltage sensorszlist current sensorszlist power supplieszinfo enclosurez list enclosuresZshmcli_list_enclosures)r
c3s|]}|�kVqdS)Nr)�.0�m)�linerr�	<genexpr>Qsz1SHMcli.collect_enclosures_list.<locals>.<genexpr>�rz -a=z -enc=rr
F)Zmakez getdebugcli -a=z -outputdir=i,)r
ZtimeoutN������)Zexec_cmd�
splitlines�split�len�upper�append�list�set�collect_cmd_outputr�any�replacerZ
get_optionZget_cmd_output_path)rZmodels�result�wordsrZadapt_indexZ	enc_indexr�_cmd�_fnameZlogpathZ_dcmdZ_dnameZ_odirr)rrr0sN




zSHMcli.collect_enclosures_listcCs�|j|j�d�dd�}|ddkr�xd|dj�D]T}|j�}t|�dkr0|dd
kr0|j�d
|d��}|j|jd�}|j||d�q0WdS)z Collect info on the drives z list drivesZshmcli_list_drives)r
rrr��WWN�---z info drive -d=rN)r2r3)r*rr#r$r%r,r)rr-rr.r/r0rrrrds
zSHMcli.collect_drivers_listN)rrr	)�__name__�
__module__�__qualname__�__doc__Z
short_descZplugin_nameZprofilesr�filesrZoption_listrrrrrrrrs4rN)Zsos.report.pluginsrrrrrrrr�<module>	s

NineSec Team - 2022