diff --git a/ninjalog_uploader.py b/ninjalog_uploader.py index 0a3e7a314..036eaec7d 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"}, - )) - - if resp.status != 200: - logging.warning("unexpected status code for response: %s", resp.status) + 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 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