%PDF-1.5 %���� ºaâÚÎΞ-ÌE1ÍØÄ÷{òò2ÿ ÛÖ^ÔÀá TÎ{¦?§®¥kuµùÕ5sLOšuY
Server IP : 49.231.201.246 / Your IP : 216.73.216.149 Web Server : Apache/2.4.18 (Ubuntu) System : Linux 246 4.4.0-210-generic #242-Ubuntu SMP Fri Apr 16 09:57:56 UTC 2021 x86_64 User : root ( 0) PHP Version : 7.0.33-0ubuntu0.16.04.16 Disable Function : exec,passthru,shell_exec,system,proc_open,popen,pcntl_exec MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : ON | Pkexec : ON Directory : /usr/lib/python3/dist-packages/uaclient/cli/ |
Upload File : |
import logging import sys import tarfile import tempfile from uaclient import messages from uaclient.actions import collect_logs from uaclient.cli.commands import ProArgument, ProArgumentGroup, ProCommand from uaclient.cli.parser import HelpCategory from uaclient.util import replace_top_level_logger_name PRO_COLLECT_LOGS_FILE = "pro_logs.tar.gz" LOG = logging.getLogger(replace_top_level_logger_name(__name__)) def action_collect_logs(args, *, cfg, **kwargs): output_file = args.output or PRO_COLLECT_LOGS_FILE with tempfile.TemporaryDirectory() as output_dir: collect_logs(cfg, output_dir) try: with tarfile.open(output_file, "x:gz") as results: results.add(output_dir, arcname="logs/") except PermissionError as e: LOG.error(e) return 1 except FileExistsError as e: LOG.error(e) print( messages.E_FILE_ALREADY_EXISTS.format( filename=output_file, ), file=sys.stderr, ) return 1 return 0 collect_logs_command = ProCommand( "collect-logs", help=messages.CLI_ROOT_COLLECT_LOGS, description=messages.CLI_COLLECT_LOGS_DESC, preserve_description=True, action=action_collect_logs, help_category=HelpCategory.TROUBLESHOOT, argument_groups=[ ProArgumentGroup( arguments=[ ProArgument( "--output", short_name="-o", help=messages.CLI_COLLECT_LOGS_OUTPUT, ) ] ) ], )