From 870bd0f6805f0c1b257b98a03750c5a32d5bd3a2 Mon Sep 17 00:00:00 2001 From: Willem Melching Date: Mon, 27 Jan 2020 11:45:30 -0800 Subject: [PATCH] Add script to nicely print logMessages old-commit-hash: 2571453a54b195adc6a961b20d798e95ab885f67 --- selfdrive/debug/filter_log_message.py | 42 +++++++++++++++++++++++++++ 1 file changed, 42 insertions(+) create mode 100755 selfdrive/debug/filter_log_message.py diff --git a/selfdrive/debug/filter_log_message.py b/selfdrive/debug/filter_log_message.py new file mode 100755 index 0000000000..8ddb12e2d7 --- /dev/null +++ b/selfdrive/debug/filter_log_message.py @@ -0,0 +1,42 @@ +#!/usr/bin/env python3 +import os +import argparse +import json + +import cereal.messaging as messaging + + +LEVELS = { + "DEBUG": 10, + "INFO": 20, + "WARNING": 30, + "ERROR": 40, + "CRITICAL": 50, +} + + +if __name__ == "__main__": + + parser = argparse.ArgumentParser() + parser.add_argument('--level', default='DEBUG') + parser.add_argument('--addr', default='127.0.0.1') + parser.add_argument("socket", type=str, nargs='*', help="socket name") + args = parser.parse_args() + + if args.addr != "127.0.0.1": + os.environ["ZMQ"] = "1" + messaging.context = messaging.Context() + + poller = messaging.Poller() + sock = messaging.sub_sock("logMessage", poller, addr=args.addr) + + min_level = LEVELS[args.level] + + while True: + polld = poller.poll(1000) + for sock in polld: + evt = messaging.recv_one(sock) + log = json.loads(evt.logMessage) + + if log['levelnum'] >= min_level: + print(f"{log['filename']}:{log.get('lineno', '')} - {log.get('funcname', '')}: {log['msg']}")