From c117716649045d216a2f664564ce043bb26d6573 Mon Sep 17 00:00:00 2001 From: Junji Watanabe Date: Thu, 4 Jul 2024 02:04:15 +0000 Subject: [PATCH] ninjalog_uploader: Handles urllib.error.HTTPError Bug: 350886098 Change-Id: I5d25c2b979da103b8ab6e61742d5a8da0c07b19d Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/5675205 Reviewed-by: Fumitoshi Ukai Commit-Queue: Junji Watanabe Auto-Submit: Junji Watanabe --- ninjalog_uploader.py | 29 +++++++++++++++++++---------- 1 file changed, 19 insertions(+), 10 deletions(-) diff --git a/ninjalog_uploader.py b/ninjalog_uploader.py index 0a3e7a314e..036eaec7d9 100755 --- a/ninjalog_uploader.py +++ b/ninjalog_uploader.py @@ -251,19 +251,28 @@ def main(): logging.info("send metadata: %s", json.dumps(metadata)) g.write(json.dumps(metadata).encode()) - resp = urllib.request.urlopen( - urllib.request.Request( - "https://" + args.server + "/upload_ninja_log/", - data=output.getvalue(), - headers={"Content-Encoding": "gzip"}, - )) + status = None + err_msg = "" + try: + resp = urllib.request.urlopen( + urllib.request.Request( + "https://" + args.server + "/upload_ninja_log/", + data=output.getvalue(), + headers={"Content-Encoding": "gzip"}, + )) + status = resp.status + logging.info("response header: %s", resp.headers) + logging.info("response content: %s", resp.read()) + except urllib.error.HTTPError as e: + status = e.status + err_msg = e.msg - if resp.status != 200: - logging.warning("unexpected status code for response: %s", resp.status) + if status != 200: + logging.warning( + "unexpected status code for response: status: %s, msg: %s", status, + err_msg) return 1 - logging.info("response header: %s", resp.headers) - logging.info("response content: %s", resp.read()) return 0