diff --git a/selfdrive/debug/run_process_on_route.py b/selfdrive/debug/run_process_on_route.py index 45665e8a48..2ccb0fb3e7 100755 --- a/selfdrive/debug/run_process_on_route.py +++ b/selfdrive/debug/run_process_on_route.py @@ -10,21 +10,21 @@ if __name__ == "__main__": formatter_class=argparse.ArgumentDefaultsHelpFormatter) parser.add_argument("--fingerprint", help="The fingerprint to use") parser.add_argument("route", help="The route name to use") - parser.add_argument("process", help="The process to run") + parser.add_argument("process", nargs='+', help="The process(s) to run") args = parser.parse_args() - cfg = [c for c in CONFIGS if c.proc_name == args.process][0] + cfgs = [c for c in CONFIGS if c.proc_name in args.process] lr = LogReader(args.route) inputs = list(lr) - outputs = replay_process(cfg, inputs, fingerprint=args.fingerprint) + outputs = replay_process(cfgs, inputs, fingerprint=args.fingerprint) # Remove message generated by the process under test and merge in the new messages produces = {o.which() for o in outputs} inputs = [i for i in inputs if i.which() not in produces] outputs = sorted(inputs + outputs, key=lambda x: x.logMonoTime) - fn = f"{args.route.replace('/', '_')}_{args.process}.zst" + fn = f"{args.route.replace('/', '_')}_{'_'.join(args.process)}.zst" print(f"Saving log to {fn}") save_log(fn, outputs)