Sindbad~EG File Manager

Current Path : /usr/share/hplip/__pycache__/
Upload File :
Current File : //usr/share/hplip/__pycache__/logcapture.cpython-310.pyc

o

�/�a�0�
@s�ddlmZdZdZdZdZddlZddlZddlZddl	Z	ddl
Z
ddlTddlm
Z
mZmZmZdd	lmZdd
lmZmZddlTdZdZd
ZdZeeZdZdZiZdd�Zdd�Z dd�Z!drdd�Z"dd�Z#edddfdedddfd edddfd!d"e
j$e
j%e
j&e
j'e
j(g
Z)z ej*eeeee)e+fddd#�Z,e,j-d$gd%�d&d'�\Z.Z/Z0Z1Z2Z3Wnej4y�Z5ze6�7e5j8�e"�WYdZ5[5ndZ5[5wwe�9d(�r�e6�:d)�e.D]V\Z;Z<e;d*vr�e"�q�e;d+kr�e"d,�q�e;d-kr�e"d.�q�e;d/k�re=ed0d1�e>dd&�q�e;d2v�re<�?��@�ZAe6�:eA��se"�q�e;d3v�r$e6�:d)�q�e;d4k�r+e<Zq�e�B�dk�r<e6�7d5�e�C�e�seed6ged7�ZDeeD�E�d�ZFeF�rXeF�Gd0�dZe�see6�7d8�e�Cd9�ejH�Ie��snd:Zd;eZJe6�Kd<eJ�e
�LeJ�\ZMZNeMdk�r�e6�7d=e�e�Cd9�e
�Ld>e�\ZMZNeMdk�r�e6�7d?e�d@edAee<dBedC<eD]8ZOe
�LdDeeOf�\ZMZNeMdk�r�e6�7d=e�e�Cd9�e
�LdEeeOf�\ZMZNeMdk�r�e6�7dFeeOf��q�e �e��s(e�PdGgdH�dI�\ZQZReQ�reRdJk�re!�e6�SdK�e�Cd9�eQ�r(eRdIk�r(e#dL�e#dM�e#dN�	e
j
�Te
j
�U�dO�ZVe6�We6�XdP��e�PdQdIdJgdI�\ZQZReQ�rOeRdIk�rOneQ�rWeRdJk�rde!�e6�SdK�e�Cd9��q)e
�LdR�\ZMZNeMdk�rwe6�7dS�e6�KdTe�e��s�ejH�IdL��r�e
�LdUe�\ZMZNeMdk�r�e6�7dVdL�ejH�IdM��r�e
�LdWe�\ZMZNeMdk�r�e6�7dVdM�ejH�IdN��r�e
�LdXe�\ZMZNeMdk�r�e6�7dVdN�n8e6�KdY�dZeVZJe�YeJd[e�ZMeMdk�r�e6�7d\�e6�Kd]�d^eVZJe�YeJd_e�ZMeMdk�re6�7d`�eD]ZOe�YdaeeOeeOf�ZM�qe
�Ldbe�\ZMZNeMdk�r6e6�7dcdd�deeZJe�ZeJ�ZMeMdk�rKe6�7d?e�dfeefZJe6�KdgeJ�e
�LeJ�\Z[ZNe[dk�rle6�7dhe�n6e6�Kdie�e
�Ldje�\ZMZNeMdk�r�e6�7dke�e6�Kdl�e
�Ldme�\ZMZNeMdk�r�e6�7dne�e!�e6�Wd�e6�Wd�e[dk�r�e6�We6�Xdoe�\�ef��e6�We6�Xdp��ne6�We6�Xdqe�\�ef��e6�Wd�dS)s�)�print_functionz1.0zHPLIP logs capture Utilityz
hp-logcapturezCaptures the HPLIP log files.N)�*)�utils�tui�module�os_utils)�to_string_utf8)�Popen�PIPEz/etc/cups/cupsd.confz/etc/cups/cupsd.conf_orginalz./�hplip_troubleshoot_logsz/var/spool/cups/tmp�cCs>ttt�}|��|j}|j}|dkr|dkrd}|Sd}|S)N�fedoraz 21TF)�CoreInstall�MODE_INSTALLER�INTERACTIVE_MODE�
get_distro�distro_name�distro_version)�corer�
distro_ver�journal�r�/usr/share/hplip/logcapture.py�
is_journal3s
�rcCs@d}dttf}t�d|�t�|�\}}|dkr!t�dt�dt}t�d|�t�|�\}}|dkr�dt}t�d	|�t�|�}|dkrRt�d
t�d}t�	d�rftj
�t�	d�d�d}n"t�	d
�rztj
�t�	d
�d
�dt}ntj
�
d�r�d}nt�d�|r�t�d|�t�|�\}}|dkr�d}|S)NF�cp -f %s %szBackup CUPS conf file. cmd =%srz Failed to take back cups file=%szgrep 'LogLevel warn' %szcmd= %sz;sed -i 's/LogLevel.*warn/LogLevel debug
hpLogLevel 15/' %s z%Changing 'Log level' to debug. cmd=%sz-Failed to update Loglevel to Debug in cups=%s�service�
 cups restart�	systemctl� restart %s.service�/etc/init.d/cups�/etc/init.d/cups restart�:service command not found.. Please restart cups manually..�CUPS restart cmd = %sT)�	CUPS_FILE�CUPS_BACKUP_FILE�log�debugr�run�error�os�system�which�path�join�service_name�exists��result�cmd�sts�outrrr�
enable_logAs:



r5cCs$d}dttf}t�d|�t�|�\}}|dkr8dt}t�d|�t�|�\}}|dkr7t�dt�nt�dt�t�d	�d}t�d
�rXt	j
�t�d
�d
�d}n"t�d�rlt	j
�t�d�d�d
t}nt	j
�
d�rud}nt�d�|r�t�d|�t�|�\}}|dkr�d}|S)NFrz Restoring CUPS conf file. cmd=%srzrm -f %sz Removing Temporary file.. cmd=%sz-Failed to remove the Temporary backup file=%sz'Failed to restore cups config file = %szRestarting CUPS servicerrrrrr r!r"T)r$r#r%r&rr'�warnr(r+r)r,r-r.r/r0rrr�restore_loglevelsis6�



r7�textcCs4|dkr
t�tt�t�t|ttt�t�d�dS)Nr8r)	r�	log_title�	__title__�__version__�format_text�USAGE�__mod__�sys�exit)�typrrr�usage�srBcCs6tj�|�r�d}tj�d||f�stj�d||f�r4|d7}tj�d||f�stj�d||f�st�d|||f�\}}|dkrMt�d|�dSd|}t�|�}|dkrat�	d|�t�
d	�r�t�d
||f�\}}|dkr�t�d|||f�dSt�d|||f�dSt�d|||f�dSdS)
N�z%s.%dz%s.%d.gzzcp %s %s.%drzFailed to archive %s log filezcat /dev/null > %szFailed to clear the %s log file�gzipz
gzip %s.%dz$Existing %s log file copied to %s.%dz'Existing %s log file copied to %s.%d.gz)r)r,r/rr'r%r(r�executer6r+�info)�strLog�iArchr3r4r2rrr�backup_clearLog�s&((�

�rI�nameTz-Usage: [su -c /sudo] %s [USER INFO] [OPTIONS]�summaryze.g. su -c '%s')z[USER INFO]r�headingF)z)User name for which logs to be collected:z--user=<username> �optionF)�run_as_root_ok�quietzhl:g:r)�helpz	help-restzhelp-manz	help-desczlogging=r&zuser=F)�handle_device_printer�HPLIP_DEBUGr&)z-hz--helpz--help-rest�restz
--help-man�manz--help-desc� )�end)z-lz	--logging)z-gz--debugz--userzIlogCapture needs root permissions since cups service restart requires....�who)�stdoutzAFailed to get the user name. Try again by passing '--user' optionrCz/tmpzmkdir -p %sz"Creating temporary logs folder =%sz'Failed to create directory =%s. Exitingz
chmod 755  %sz$Failed to change permissions for %s.z/home/z/.hplipz/root/.hplip�rootzmkdir -p %s/%szchmod 755  %s/%sz'Failed to change permissions for %s/%s.zVArchiving system logs (i.e. syslog, message, error_log). Press (y=yes*, n=no, q=quit):)�y�n�qrZr\z	User exitz/var/log/syslogz/var/log/messagesz/var/log/cups/error_logz%Y-%m-%d %H:%M:%SzT
Please perform the tasks (Print, scan, fax) for which you need to collect the logs.z1Are you done with tasks?. Press (y=yes*, q=quit):zhp-checkzFailed to run hp-check commandz$Copying logs to Temporary folder =%sz#cp -f /var/log/syslog %s/syslog.logzFailed to capture %s log file.z'cp -f /var/log/messages %s/messages.logz3cp -f /var/log/cups/error_log %s/cups_error_log.logz(Collecting cups logs from system journalz+journalctl -u cups.service -e --since '%s' z> %s/cups_error.logz#Failed to capture logs from journalz'Collecting messages from system journalzjournalctl --since '%s' z> %s/messages.logz'Failed to capture messages from journalz!cp -f %s/*.log  %s/%s 2>/devnull zmv -f ./hp-check.log %szFailed to capture %s log files.z./hp-check.logzchmod 666  %s/*.logztar -zcf %s.tar.gz %szCompressing logs. cmd =%szFailed to compress %s folder.z$Changing Permissions of ./%s.tar.gz zchmod 666 -R ./%s.tar.gzz+Failed to change permissions for %s.tar.gz.zRemoving Temporary log files..z	rm -rf %sz2Failed to remove temporary files. Remove manually.zLogs are saved as %s/%s.tar.gzzXPlease create a bug @https://bugs.launchpad.net/hplip/+filebug and upload this log file.zLogs are saved as %s/%s)r8)]�
__future__rr;r:r>�__doc__r)r?�getopt�glob�datetime�base.g�baserrrr�base.sixextr�
subprocessr	r
�installer.core_installr#r$�LOG_FOLDER_PATH�LOG_FOLDER_NAME�	LOG_FILES�TMP_DIR�	USER_NAME�USERSrr5r7rBrI�
USAGE_OPTIONS�
USAGE_HELP�USAGE_LOGGING1�USAGE_LOGGING2�USAGE_LOGGING3r=�Moduler�mod�parseStdOpts�opts�
device_uri�printer_name�mode�
ui_toolkit�loc�GetoptError�er%r(�msg�getenv�	set_level�o�a�print�
clean_exit�lower�strip�	log_level�getuidr@�pout�communicate�output�splitr,r/r2r&r'r3r4�u�enter_choice�ok�
user_inputr6�strftime�now�log_timerF�boldr*rE�sts_compress�getcwdrrrr�<module>sn(
!
�����





�

�








�



�




�

















Sindbad File Manager Version 1.0, Coded By Sindbad EG ~ The Terrorists