????

Your IP : 216.73.217.84


Current Path : /opt/cloudlinux/venv/lib64/python3.11/site-packages/wmt/__pycache__/
Upload File :
Current File : //opt/cloudlinux/venv/lib64/python3.11/site-packages/wmt/__pycache__/wmt-api.cpython-311.pyc

�

�ԍDet��2�ddlZddlZddlZddlZddlZddlZddlZddlZddlm	Z	ddl
m
Z
mZddlm
Z
mZmZmZddlmZmZddlmZddlmZddlmZmZdd	lmZdd
lmZddlm Z m!Z!dd
�Z"dd�Z#d�Z$d�Z%d�Z&d�Z'd�Z(d�Z)e*dkre)��dSdS)�N)�ArgumentParser)�datetime�	timedelta)�WMT_SCANNER_SERVICE�
WMT_LOCK_FILE�CONFIG_PATH�WMT_DB)�generate_report�report_dict)�setup_database)�set_service_state)�Notifier�SupportedNotificationTypes)�cfg)�CloudlinuxLicenseLib)�send_report_to_clickhouse�manage_crons�successc���|tj��d�}|�|��ttj|dd�����tj|��dS)N)�result�	timestamp�T)�indent�	sort_keys)�time�update�print�json�dumps�sys�exit)r�	exit_code�extra�messages    ��/builddir/build/BUILDROOT/cl-web-monitoring-tool-3.2.3-1.el9.cloudlinux.x86_64/opt/cloudlinux/venv/lib/python3.11/site-packages/wmt/wmt-api.py�print_result_and_exitr&ss����Y�[�[���G��N�N�5����	�$�*�W��#�%�%�%�&�&�&��H�Y�������c�d�tj��}	tj��}n#t$rt	|��}YnwxYwtjdt
jt
j��tjt
j	d|�d|�d|�d|����tj
��dS)Nzwmt-apizaction=z uid=z user=� )�os�getuid�getlogin�OSError�str�syslog�openlog�LOG_PID�LOG_AUTH�LOG_INFO�closelog)�action�details�uid�users    r%�
_audit_logr:+s���
�)�+�+�C���{�}�}���������3�x�x��������
�N�9�f�n�f�o�>�>�>�
�M�&�/�E�V�E�E�#�E�E�T�E�E�G�E�E�G�G�G�
�O�����s�)�A�Ac�d�tj�t��sdSt	t��5}	tj|���t
jt
j	z��n#t$rYddd��dSwxYw	ddd��n#1swxYwYdS)N�stopped�started)r+�path�existsr�open�fcntl�flock�fileno�LOCK_EX�LOCK_NBr.)�fs r%�
get_statusrG7s���
�7�>�>�-�(�(���y�	
�m�	�	���	��K����
�
�E�M�E�M�$A�B�B�B�B���	�	�	����������	����
C��������������������9s4�B%�>A<�;B%�<
B�B%�B�B%�%B)�,B)c��tj�t��sdSt	t��5}	tj|���t
jt
j	z��tj|���t
j
��	ddd��dS#t$r)|����
��}YnwxYw	ddd��n#1swxYwY|sdS	t|��}n#t$rYdSwxYwt!j|��r|ndS�N)r+r>r?rr@rArBrC�LOCK_SHrE�LOCK_UNr.�read�strip�int�
ValueError�psutil�
pid_exists)rF�data�pids   r%�get_scanner_pidrTCs���
�7�>�>�-�(�(���t�	
�m�	�	���	��K����
�
�E�M�E�M�$A�B�B�B�
�K����
�
�E�M�2�2�2��#����������	$�	$�	$��6�6�8�8�>�>�#�#�D�D�D�	$�����������������������$���t���$�i�i���������t�t������#�C�(�(�2�3�3�d�2sF�C=�>B:�;2C=�:0C-�*C=�,C-�-C=�=D�D�
D�
D+�*D+c�(�tj��SrI)r�to_dict�r'r%�
get_configrXas���;�=�=�r'c����tj���tj|�����fd��D��}tddt	j|������t
��}|�tj|tj
���S)Nc���i|]Z}��|����|��k�.|��|����|��d���[S))�old�new)�get)�.0�k�config�
old_configs  ��r%�
<dictcomp>z!change_config.<locals>.<dictcomp>hsf���F�F�F��&�*�*�Q�-�-�:�>�>�!�3D�3D�"D�"D��*�.�.��+�+�F�J�J�q�M�M�B�B�"D�"D�"Dr'z
config-changezchanged=)rrV�modifyr:rrrTr+�kill�signal�SIGUSR1)�new_json_config�changed�scanner_pidr`ras   @@r%�
change_configrjes���������J�
�Z��
(�
(�F�F�F�F�F�F��F�F�F�G��� @�4�:�g�+>�+>� @� @�A�A�A�!�#�#�K���
���V�^�,�,�,��Mr'c	��
�t��}|�dd���|�dt���|�dd���|�dd���|�dd���|�d	d���|�d
d���|�dd���|���}|jrqt��}tj|d<|�d
��r-d�	|�d
����}||d
<t|���dS|jr5t|j��}tj|d<t|���dS|j
r�ttj�t$�����}t'j��t+d���z
t'j��}}t-t/|||����}t|t'j���d�����dS|jr�td���}t'j�����t+d���z
t'j�����}}t7t-t/|||������t9d��t��dS|j�rft=��dk}|�r-tjj�rtA���!��stdd���t��}t'j�����t+d���z
t'j�����}}t/|||��}tEtj#tj$|tJj&����'��t9ddtj#����t��dStdtP�dtR�d�d���dS|j*r t=��}	t|	� ��dS|j+rMtYtPd!��t[d� ��t9d"d#tP����t��dS|j.rMtYtPd$��t[d%� ��t9d&d#tP����t��dS|�/��dS)'Nz--config-get�
store_true)r6z--config-change)�typez--report-getz--send-clickhousez--send-emailz--statusz--startz--stop�default_report_email�ignore_list�,)r`)�readonly�)�daysz%Y-%m-%d %H:%M)�report�dateTzsend-clickhouser=ziCloudLinux license is expired. You may buy new license here: https://lp.cloudlinux.com/cloudlinux-os-solo)r")�target_email�
from_emailrt�notification_typez
send-emailztarget=z7Summary report email will not be sent! Please, ensure "z<" service is running and alert_notifications is enabled in "�")�status�startz
service-startzservice=�stopFzservice-stop)0r�add_argumentr/�
parse_args�
config_getrXrrnr]�joinr&�
config_changerj�
report_getrr+r>r?r	r�nowrrr
�strftime�send_clickhouserurr:�
send_emailrG�summary_notification_enabledr�get_license_statusrrvrwr�REPORT�notifyrrrzr{r
rr|�
print_help)
�args�optsr`�tmp_val�enginer{�endrt�is_scanner_runningrzs
          r%�runr�qs6�����D����n�\��:�:�:����'�c��2�2�2����n�\��:�:�:����)�,��?�?�?����n�\��:�:�:����j���6�6�6����i���5�5�5����h�|��4�4�4��?�?���D���@�����),�)A��%�&��:�:�m�$�$�	,��h�h�v�z�z�-�8�8�9�9�G�$+�F�=�!��V�,�,�,�,�,�,�	
�	�7��t�1�2�2��),�)A��%�&��V�,�,�,�,�,�,�	
��2�������)?�)?�@�@�@���\�^�^�i�Q�&7�&7�&7�7�����s���_�V�U�C�@�@�A�A���V�(�,�.�.�2I�2I�JZ�2[�2[�\�\�\�\�\�\�	
�	�,���.�.�.���\�^�^�(�(�*�*�Y�A�->�->�->�>�����@S�@S�@U�@U�s��!�+�o�f�e�S�.Q�.Q�"R�"R�S�S�S��$�%�%�%�������	
��%�'�\�\�Y�6���	e�#�'�"F�	e�'�)�)�<�<�>�>�
3�%�'s�01�3�3�3�3�$�%�%�F�!����,�,�.�.���1B�1B�1B�B�H�L�N�N�DW�DW�DY�DY�3�E�$�V�U�C�8�8�F�� �-��>��1K�1R�
�
�
��f�h�h�h��|�%A�s�/?�%A�%A�B�B�B�!�#�#�#�#�#�!�#W�5H�#W�#W�HS�#W�#W�#W�bc�
e�
e�
e�
e�
e�
e�
��������V�,�,�,�,�,�,�	
��
�	�-�w�7�7�7��D�!�!�!�!��?�$D�/B�$D�$D�E�E�E�������	
����-�v�6�6�6��E�"�"�"�"��>�#C�.A�#C�#C�D�D�D��������������r'c��	t��dS#t$r*}tddt|�����Yd}~dSd}~wwxYw)N�errorrr)rr"�context)r��	Exceptionr&r/)�es r%�mainr��se��K���������K�K�K��W��3�q�6�6�J�J�J�J�J�J�J�J�J�J�����K���s��
A�A�A�__main__)rr)r()+rrAr+rr r0rPre�argparserrr�wmt.common.constrrrr	�wmt.common.reportr
r�wmt.dbr�wmt.common.servicer
�wmt.common.notificationrr�
wmt.commonr�	cllicenser�wmt.common.utilsrrr&r:rGrTrXrjr�r��__name__rWr'r%�<module>r�s�����������	�	�	�	�����
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�#�#�#�#�#�#�(�(�(�(�(�(�(�(�������������;�:�:�:�:�:�:�:�!�!�!�!�!�!�0�0�0�0�0�0�H�H�H�H�H�H�H�H�������*�*�*�*�*�*�D�D�D�D�D�D�D�D�	�	�	�	�	�	�	�	�	�	�	�3�3�3�<���	�	�	�P�P�P�fK�K�K��z����D�F�F�F�F�F��r'