pyats.log.commands package¶
Subpackages¶
Submodules¶
- class pyats.log.commands.archive.Archive(archive, unzip_dir=None)¶
Bases:
pyats.log.commands.archive.FileHandler
- async extract_archive(**kwargs)¶
- async listdir(folder=None, _depth=0, _parent_id=0)¶
- async parse_archive(**kwargs)¶
- async read_bytes(logfile, log_start=0, log_size=- 1, offset=0, limit=0)¶
return the logs for a secton/step, paginated according to offset/limit. log_start: start bytes of section in the log file. log_size: bytes size of section. offset: (Optional) start point for current trunk. bytes offset
inside the log section.
limit: (Optional) size of current trunk.
- async read_file(filename, read_lines=False)¶
- async read_lines(logfile, offset=None, limit=None, log_start=0, log_size=- 1)¶
return a list of file content, seperated by lines. return the whole file when passing no parameter. log_start: start btyes of section in the log file. log_size: bytes size of section. offset: start line # in the section. limit: # of lines to read
- class pyats.log.commands.archive.FileHandler(_dir)¶
Bases:
object
- async listdir(folder=None, _depth=0, _parent_id=0)¶
- async read_bytes(logfile, log_start=0, log_size=- 1, offset=0, limit=0)¶
return the logs for a secton/step, paginated according to offset/limit. log_start: start bytes of section in the log file. log_size: bytes size of section. offset: (Optional) start point for current trunk. bytes offset
inside the log section.
limit: (Optional) size of current trunk.
- async read_file(filename, read_lines=False)¶
- async read_lines(logfile, offset=None, limit=None, log_start=0, log_size=- 1)¶
return a list of file content, seperated by lines. return the whole file when passing no parameter. log_start: start btyes of section in the log file. log_size: bytes size of section. offset: start line # in the section. limit: # of lines to read
- class pyats.log.commands.archive.RunInfoFileHandler(runinfo_dir)¶
Bases:
pyats.log.commands.archive.FileHandler
- async get_tail_start(filename, start_bytes=0, line_offset=20)¶
reads file by line and gets line and bytes number of where to start tailing line_offset is the number of previous lines to show from tailing
- tailing_file(filename, start_bytes=0)¶
tailing_file function tail file in separated process in non blocking fashion
- pyats.log.commands.archive.file_flag(flag_name)¶
Creates temp file within cache to indicate active parsing
- class pyats.log.commands.logs.ListSubcommand(parent)¶
Bases:
pyats.cli.base.Subcommand
- description = '\nlist all archives stored in standard known archive locations.\n '¶
- help = 'list all log archives'¶
- name = 'list'¶
- run(args)¶
runs this subcommand
- class pyats.log.commands.logs.LogsCommand(*args, **kwargs)¶
Bases:
pyats.cli.base.CommandWithSubcommands
- SUBCMDS_ENTRYPOINT = ''¶
- SUBCOMMANDS = [<class 'pyats.log.commands.logs.ViewSubcommand'>, <class 'pyats.log.commands.logs.ListSubcommand'>, <class 'pyats.cisco.commands.upload.UploadSubcommand'>]¶
- help = 'command enabling log archive viewing in local browser'¶
- name = 'logs'¶
- class pyats.log.commands.logs.ViewSubcommand(*args, **kwargs)¶
Bases:
pyats.cli.base.Subcommand
- description = '\nOpens pyATS generated archive zip files and host them through HTTP server.\n\nBehavior:\n - List all archives stored in standard known archive locations in reverse \n order on webpage.\n - Click to view detail results of an archive.\n - set environment variable $BROWSER to your browser executable to force using\n your provided browser\n - if liveview is enabled, opens the lastest running job.\n\nExamples:\n # opens the archive list page\n $ pyats logs view\n\n # opens the last generated archive file\n $ pyats logs view --latest\n\n # open a specific archive file\n $ pyats logs view /path/to/archive.zip\n '¶
- help = 'open and view log archives in browser'¶
- name = 'view'¶
- run(args)¶
runs this subcommand
- usage = '{prog} [archive] [options]'¶
- class pyats.log.commands.server.LogViewerServer(archive=None, fread_size=20480, fread_line=100, latest=False, **kwargs)¶
Bases:
MutableMapping
[Union
[str
,aiohttp.helpers.AppKey
[Any
]],Any
]- keep_alive: if True, when liveview job finishes,
keep serving the logviewer
- async commands(request)¶
- configure_routes(url_prefix='/private/v1/standalone')¶
- async download_archive(request)¶
- async download_file(request)¶
- async error_middleware(request, handler)¶
- async filebytes(request)¶
- async filelines(request)¶
- async files(request)¶
- async htmlviewer(request)¶
- async index(request)¶
serve index page
- async log_save(request)¶
- async logfile_cmd(request)¶
- async logfile_sec(request)¶
- async redirect(request)¶
- async results(request)¶
- async results_list(request)¶
list all results data with pagination URL: /results
- async sections(request)¶
- serve(*args, **kwargs)¶
serve this single-app web server
- async static(request)¶
- pyats.log.commands.server.validate_uuid(func)¶