On 4/18/19 7:57 PM, Joshua Watt wrote:
> Adds a subcommand for dumping various logs from test results
>
> Signed-off-by: Joshua Watt <jpewhac...@gmail.com>
> ---
> scripts/lib/resulttool/log.py | 56 ++++++++++++++++++++++++++++
> scripts/lib/resulttool/regression.py | 2 +-
> scripts/resulttool | 2 +
> 3 files changed, 59 insertions(+), 1 deletion(-)
> create mode 100644 scripts/lib/resulttool/log.py
>
> diff --git a/scripts/lib/resulttool/log.py b/scripts/lib/resulttool/log.py
> new file mode 100644
> index 00000000000..5584f2d0a99
> --- /dev/null
> +++ b/scripts/lib/resulttool/log.py
> @@ -0,0 +1,56 @@
> +# resulttool - Show logs
> +#
> +# Copyright (c) 2019 Garmin International
> +#
> +# This program is free software; you can redistribute it and/or modify it
> +# under the terms and conditions of the GNU General Public License,
> +# version 2, as published by the Free Software Foundation.
> +#
> +# This program is distributed in the hope it will be useful, but WITHOUT
> +# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
> +# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
> +# more details.
> +#
> +import resulttool.resultutils as resultutils
> +
> +def show_ptest(result, ptest, logger):
> + if 'ptestresult.sections' in result:
> + if ptest in result['ptestresult.sections'] and 'log' in
> result['ptestresult.sections'][ptest]:
> + print(result['ptestresult.sections'][ptest]['log'])
> + return 0
> +
> + print("ptest '%s' not found" % ptest)
> + return 1
> +
> +def log(args, logger):
> + results = resultutils.load_resultsdata(args.source)
> + for path in results:
> + for res in results[path]:
> + if 'result' not in results[path][res]:
> + continue
> + r = results[path][res]['result']
> +
> + if args.raw:
> + if 'ptestresult.rawlogs' in r:
> + print(r['ptestresult.rawlogs']['log'])
> + else:
> + print('Raw logs not found')
> + return 1
> +
> + for ptest in args.ptest:
> + if not show_ptest(r, ptest, logger):
> + return 1
> +
> +def register_commands(subparsers):
> + """Register subcommands from this plugin"""
> + parser = subparsers.add_parser('log', help='show logs',
> + description='show the logs from
> test results',
> + group='analysis')
> + parser.set_defaults(func=log)
> + parser.add_argument('source',
> + help='the results file/directory/URL to import')
> + parser.add_argument('--ptest', action='append', default=[],
> + help='show logs for a ptest')
> + parser.add_argument('--raw', action='store_true',
> + help='show raw logs')
> +
> diff --git a/scripts/lib/resulttool/regression.py
> b/scripts/lib/resulttool/regression.py
> index aecb9da9ce5..fa90ab1e522 100644
> --- a/scripts/lib/resulttool/regression.py
> +++ b/scripts/lib/resulttool/regression.py
> @@ -64,7 +64,7 @@ def regression_common(args, logger, base_results,
> target_results):
> if a in target_results:
> base = list(base_results[a].keys())
> target = list(target_results[a].keys())
> - # We may have multiple base/targets which are for different
> configurations. Start by
> + # We may have multiple base/targets which are for different
> configurations. Start by
This change looks the same to me so what am I missing?
- Armin
> # removing any pairs which match
> for c in base.copy():
> for b in target.copy():
> diff --git a/scripts/resulttool b/scripts/resulttool
> index 18ac1019236..9477667a870 100755
> --- a/scripts/resulttool
> +++ b/scripts/resulttool
> @@ -49,6 +49,7 @@ import resulttool.store
> import resulttool.regression
> import resulttool.report
> import resulttool.manualexecution
> +import resulttool.log
> logger = scriptutils.logger_create('resulttool')
>
> def main():
> @@ -66,6 +67,7 @@ def main():
> subparsers.add_subparser_group('analysis', 'analysis', 100)
> resulttool.regression.register_commands(subparsers)
> resulttool.report.register_commands(subparsers)
> + resulttool.log.register_commands(subparsers)
>
> args = parser.parse_args()
> if args.debug:
--
_______________________________________________
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core