HEX
Server: LiteSpeed
System: Linux php-prod-1.spaceapp.ru 5.15.0-157-generic #167-Ubuntu SMP Wed Sep 17 21:35:53 UTC 2025 x86_64
User: xnsbb3110 (1041)
PHP: 8.1.33
Disabled: NONE
Upload Files
File: //usr/local/CyberCP/plogical/__pycache__/CyberCPLogFileWriter.cpython-310.pyc
o

��hv�@s:ddlZddlZddlZddlZddlZGdd�d�ZdS)�Nc@s^eZdZdZedd��Zeddd��Zeddd��Zed	d
��Zedd��Z	edd
d��Z
dS)�CyberCPLogFileWriterz/home/cyberpanel/error-logs.txtc
Csdzddl}|�d||j�sd�||�}|WSty1}zt�t|�d�WYd}~dSd}~ww)Nrz^From: zFrom: {}
{}z [AddFromHeader])�re�search�	MULTILINE�format�
BaseExceptionr�writeToFile�str)�sender�messager�msg�r
�3/usr/local/CyberCP/plogical/CyberCPLogFileWriter.py�
AddFromHeader
s ��z"CyberCPLogFileWriter.AddFromHeaderNc
Cszed}tj�|�rQddl}|�t|d����}|d}|d}	|d}
|d}t�t	|�t
|	��}|�|
|�|dkrAd�||�}t
�||�}|�|
||�WdSt�d	�}
t
�||�}|
�|||�WdSty}zt
�t	|��WYd}~dSd}~ww)
Nz/home/cyberpanel/smtpDetailsr�r�smtpHost�smtpPort�smtpUserName�smtpPasswordzSubject: {}

{}�	localhost)�os�path�exists�json�loads�open�read�smtplib�SMTPr	�int�loginrrr�sendmailrr)r
�	receiversr�subject�type�smtpPathr�mailSettingsrrrr�
smtpServer�smtpObjrr
r
r�	SendEmails,
��zCyberCPLogFileWriter.SendEmailc

Cspz�tdt�d�d|�ttjd�}|�dt�d�d|d�|��d}zJtj	�
|�rmd}d}t|d	����d�}d
t
��}|g}d|d�|�|d
t�d�|ff}|dksb|dkrqt�|||�WWdSWWdSWWdSty�}	z$ttjd�}|�dt�d�dt|	�d�|��WYd}	~	WdSd}	~	wwty�}	zWYd}	~	dSd}	~	ww)N�[�%m.%d.%Y_%H-%M-%S�] �a�
z/usr/local/CyberCP/emailDebugzCyberPanel log reportingz/home/cyberpanel/adminEmailrzroot@%sz From: %s
To: %s
Subject: %s

%s
z, z
[%s] %s. 
�zCan not write to error file.)�print�time�strftimerr�fileName�
writelines�closerrrr�rstrip�socket�gethostname�joinr)rr	)
r�email�file�	emailPath�SUBJECT�adminEmailPath�
adminEmailr
�TOrr
r
rr6s^
������	�
��������z CyberCPLogFileWriter.writeToFilecCshz)ttjd�}|�dt�d�d|d|d|d�|��|��WdSty3YdSw)	Nr-r*r+z] [�:r,r.zCan not write to error file!)rrr3r4r1r2r5r)r�level�methodr;r
r
r�writeforCLI^s0
���������z CyberCPLogFileWriter.writeforCLIc
CsPztt�ddt|�|g��d��}|WStjy'}zWYd}~dSd}~ww)N�tailz-nzutf-8zFile was empty)r	�
subprocess�check_output�decode�CalledProcessError)�
numberOfLinesr3�lastFewLinesrr
r
r�readLastNFilesis ��z#CyberCPLogFileWriter.readLastNFilesc
Cs�z'tj�d�rt|�|dkrt|d�}nt|d�}|�|d�|��WdStyC}zt�	t
|�d�WYd}~dSd}~ww)Nz/usr/local/CyberCP/debug�wr-r.z [statusWriter])rrrr0rr4r5rrrr	)�tempStatusPath�mesg�append�
statusFilerr
r
r�statusWriterts
 ��z!CyberCPLogFileWriter.statusWriter)NN)N)�__name__�
__module__�__qualname__r3�staticmethodrr)rrDrLrRr
r
r
rrs
'



r)rFr1r7rrrr
r
r
r�<module>s