HOME


sh-3ll 1.0
DIR:/usr/local/lib/python3.6/site-packages/agent360/plugins/__pycache__/
Upload File :
Current File : //usr/local/lib/python3.6/site-packages/agent360/plugins/__pycache__/docker.cpython-36.pyc
3

)��hr
�@s@ddlZddlZddlZGdd�dej�Zedkr<e�j�dS)�Nc@s eZdZdZdd�Zdd�ZdS)�PluginZdockercCsi}i}|j�}�y�dd�tjd�j�j�D�}�x�|D�]z}i}|djd�|d<|d}|d}	|j|d	�|d
<|j|d�|d<|jd
|df|j|d�|�|d<|jd
|df|j|d�|�|d<|jd
|df|j|d�|�|d<|jd
|df|j|d�|�|d<|djd�|d<|j|d	�|d
|d
f<|j|d�|d
|df<|j|d�|d
|df<|j|d�|d
|df<|j|d�|d
|df<|||<q8WWn$tk
�r�}
z|
j	Sd}
~
XnXt
|�|d<tj�|d<|j|�|S)z�
        Docker monitoring, needs sudo access!
        Instructions at:
        https://docs.360monitoring.com/docs/docker-plugin
        cSsg|]}|jd��qS)z / )�split)�.0�s�r�@/root/tmp/pip-build-yeh9mt8d/agent360/agent360/plugins/docker.py�
<listcomp>szPlugin.run.<locals>.<listcomp>z�sudo docker stats --no-stream --no-trunc --format "{{.CPUPerc}} / {{.Name}} / {{.ID}} / {{.MemUsage}} / {{.NetIO}} / {{.BlockIO}} / {{.MemPerc}}"r�%�cpu���Zmem_usage_bytes�Zmem_total_bytesz%s_%sZnet_in_bytes�Z
net_out_bytes�Z
disk_in_bytes�Zdisk_out_bytes��	Zmem_pctN�
containers�ts)
Zget_agent_cache�os�popen�read�
splitlines�strip�computerReadableZabsolute_to_per_second�	Exception�message�len�timeZset_agent_cache)�self�configr�
last_valueZ
prev_cache�lines�row�	container�nameZcontainer_id�errr�runs:$$$$
z
Plugin.runcCs�|dd�dkr$t|dd��dS|dd�dkrLt|dd��ddS|dd�dkrxt|dd��dddS|dd�dkr�t|dd��ddddS|dd�dk�r�t|dd��dddddS|dd�d	k�rt|dd��dS|dd�d
k�r.t|dd��ddS|dd�dk�r\t|dd��dddS|d d�dk�r�t|dd!��ddddS|d"d�d
k�r�t|dd#��dddddS|d$d�dk�r�t|dd%��SdS)&Nr
ZKiBiZMiBZGiBZTiBZPiBrZkBZMBZGBZTBZPBr�B���r*r*r*r*r*r*r*r*r*���r+r+r+r+r+r+r+r+r+���r,)�float)r �valuerrrr1s, $ $zPlugin.computerReadableN)�__name__�
__module__�__qualname__r(rrrrrrs&r�__main__)rZpluginsrZ
BasePluginrr/�executerrrr�<module>s
A