File: //usr/lib/mysqlsh/plugins/debug/__pycache__/host_info.cpython-39.pyc
a
��kfh! � @ sP d dl mZmZmZ d dlZd dlZd dlZd dlZd dlm Z m
Z
d dlZd dlZd dl
Z
d dlZg d�Zg d�Zg d�Zee eee ee ee f d�dd �ZG d
d� d�Zdd
� Zd!eee ed�dd�Zejed�dd�Zed�dd�Zdd� Zedk�rLe�dd��(Zeedddidd ig� W d � n1 �sB0 Y dS )"� )�List�Optional�TupleN)�globals�Error)�date�uname -a�mount -v�df -hz iostat -Kztop -l4 -s1�ps aux� ulimit -a�dmesg�%egrep -i 'err|fault|mysql' /var/log/*znetstat -ln� sysctl -a)zdate /T�verZ
systeminfoztasklist /V)!r r Z
getenforcezfree -mz swapon -szlsb_release -ar r
zcat /proc/cpuinfozcat /proc/meminfozcat /etc/fstabzmpstat -P ALL 1 4ziostat -m -x 1 4z
vmstat 1 4ztop -b -n 4 -d 1r r z�for PID in `pidof mysqld`;do echo "# numastat -p $PID";numastat -p $PID;echo "# /proc/$PID/limits";cat /proc/$PID/limits;echo;doner
r ZpvsZ pvdisplayZvgsZ vgdisplayZlvsZ lvdisplayznetstat -lnputznumactl --hardwareznumastat -mr z dmidecode -s system-product-namezlsblk -izsudo sosreport)�l�returnc C s� g }g }g }| D ]z}|� � �d�r8|�|�d�d � q|� � �d�r\|�|�d�d � q|� � �d�r�|�|�d�d � q|�|� q|||fS )Nzbefore:�:���zduring:zafter:)�lower�
startswith�append� partition)r �beforeZduringZafter�s� r �+/usr/lib/mysqlsh/plugins/debug/host_info.py�split_phasesV s r c @ sp e Zd Zg dfee ed�dd�Zejed�dd�Z ejed�dd �Z
ejeed
�dd�Zejed�d
d�Z
dS )�
ShellExecutorT)�custom_shell�allow_phasesc C s. t |�| _|s*| jd s"| jd r*td��d S )N� � zHOption 'customShell' may not contain before:, during: or after: prefixes)r r r )�selfr r r r r �__init__g s
�zShellExecutor.__init__��zf�prefixc C s0 | j d }|r,td� t||� d�|dd� d S )Nr zExecuting custom shell scriptszcustom_shell.txtF��
ignore_errors�r �print�run_shell_scripts�r# r&