Improve error reporting

merge-requests/30/head
Bob Mottram 2021-05-20 13:04:05 +01:00
parent 859ec14ed7
commit 2c348f3edf
5 changed files with 68 additions and 88 deletions

104
daemon.py
View File

@ -833,7 +833,7 @@ class PubServer(BaseHTTPRequestHandler):
self.wfile.write(msg) self.wfile.write(msg)
return True return True
except Exception as e: except Exception as e:
print(e) print('ERROR: _write error ' + str(tries) + ' ' + str(e))
time.sleep(0.5) time.sleep(0.5)
tries += 1 tries += 1
return False return False
@ -1519,8 +1519,7 @@ class PubServer(BaseHTTPRequestHandler):
self.server.POSTbusy = False self.server.POSTbusy = False
return return
except ValueError as e: except ValueError as e:
print('ERROR: POST login read failed') print('ERROR: POST login read failed, ' + str(e))
print(e)
self.send_response(400) self.send_response(400)
self.end_headers() self.end_headers()
self.server.POSTbusy = False self.server.POSTbusy = False
@ -1679,8 +1678,7 @@ class PubServer(BaseHTTPRequestHandler):
self.server.POSTbusy = False self.server.POSTbusy = False
return return
except ValueError as e: except ValueError as e:
print('ERROR: POST moderationParams rfile.read failed') print('ERROR: POST moderationParams rfile.read failed, ' + str(e))
print(e)
self.send_response(400) self.send_response(400)
self.end_headers() self.end_headers()
self.server.POSTbusy = False self.server.POSTbusy = False
@ -1882,8 +1880,7 @@ class PubServer(BaseHTTPRequestHandler):
self.server.POSTbusy = False self.server.POSTbusy = False
return return
except ValueError as e: except ValueError as e:
print('ERROR: POST accessKeysParams rfile.read failed') print('ERROR: POST accessKeysParams rfile.read failed, ' + str(e))
print(e)
self.send_response(400) self.send_response(400)
self.end_headers() self.end_headers()
self.server.POSTbusy = False self.server.POSTbusy = False
@ -1980,8 +1977,8 @@ class PubServer(BaseHTTPRequestHandler):
self.server.POSTbusy = False self.server.POSTbusy = False
return return
except ValueError as e: except ValueError as e:
print('ERROR: POST optionsConfirmParams rfile.read failed') print('ERROR: ' +
print(e) 'POST optionsConfirmParams rfile.read failed, ' + str(e))
self.send_response(400) self.send_response(400)
self.end_headers() self.end_headers()
self.server.POSTbusy = False self.server.POSTbusy = False
@ -2484,8 +2481,8 @@ class PubServer(BaseHTTPRequestHandler):
self.server.POSTbusy = False self.server.POSTbusy = False
return return
except ValueError as e: except ValueError as e:
print('ERROR: POST followConfirmParams rfile.read failed') print('ERROR: POST followConfirmParams rfile.read failed, ' +
print(e) str(e))
self.send_response(400) self.send_response(400)
self.end_headers() self.end_headers()
self.server.POSTbusy = False self.server.POSTbusy = False
@ -2568,8 +2565,8 @@ class PubServer(BaseHTTPRequestHandler):
self.server.POSTbusy = False self.server.POSTbusy = False
return return
except ValueError as e: except ValueError as e:
print('ERROR: POST followConfirmParams rfile.read failed') print('ERROR: POST followConfirmParams rfile.read failed, ' +
print(e) str(e))
self.send_response(400) self.send_response(400)
self.end_headers() self.end_headers()
self.server.POSTbusy = False self.server.POSTbusy = False
@ -2666,8 +2663,8 @@ class PubServer(BaseHTTPRequestHandler):
self.server.POSTbusy = False self.server.POSTbusy = False
return return
except ValueError as e: except ValueError as e:
print('ERROR: POST blockConfirmParams rfile.read failed') print('ERROR: POST blockConfirmParams rfile.read failed, ' +
print(e) str(e))
self.send_response(400) self.send_response(400)
self.end_headers() self.end_headers()
self.server.POSTbusy = False self.server.POSTbusy = False
@ -2750,8 +2747,8 @@ class PubServer(BaseHTTPRequestHandler):
self.server.POSTbusy = False self.server.POSTbusy = False
return return
except ValueError as e: except ValueError as e:
print('ERROR: POST blockConfirmParams rfile.read failed') print('ERROR: POST blockConfirmParams rfile.read failed, ' +
print(e) str(e))
self.send_response(400) self.send_response(400)
self.end_headers() self.end_headers()
self.server.POSTbusy = False self.server.POSTbusy = False
@ -2832,8 +2829,7 @@ class PubServer(BaseHTTPRequestHandler):
self.server.POSTbusy = False self.server.POSTbusy = False
return return
except ValueError as e: except ValueError as e:
print('ERROR: POST searchParams rfile.read failed') print('ERROR: POST searchParams rfile.read failed, ' + str(e))
print(e)
self.send_response(400) self.send_response(400)
self.end_headers() self.end_headers()
self.server.POSTbusy = False self.server.POSTbusy = False
@ -3168,8 +3164,7 @@ class PubServer(BaseHTTPRequestHandler):
self.server.POSTbusy = False self.server.POSTbusy = False
return return
except ValueError as e: except ValueError as e:
print('ERROR: POST questionParams rfile.read failed') print('ERROR: POST questionParams rfile.read failed, ' + str(e))
print(e)
self.send_response(400) self.send_response(400)
self.end_headers() self.end_headers()
self.server.POSTbusy = False self.server.POSTbusy = False
@ -3250,8 +3245,7 @@ class PubServer(BaseHTTPRequestHandler):
self.server.POSTbusy = False self.server.POSTbusy = False
return return
except ValueError as e: except ValueError as e:
print('ERROR: POST mediaBytes rfile.read failed') print('ERROR: POST mediaBytes rfile.read failed, ' + str(e))
print(e)
self.send_response(400) self.send_response(400)
self.end_headers() self.end_headers()
self.server.POSTbusy = False self.server.POSTbusy = False
@ -3304,8 +3298,8 @@ class PubServer(BaseHTTPRequestHandler):
self.server.POSTbusy = False self.server.POSTbusy = False
return return
except ValueError as e: except ValueError as e:
print('ERROR: POST removeShareConfirmParams rfile.read failed') print('ERROR: POST removeShareConfirmParams rfile.read failed, ' +
print(e) str(e))
self.send_response(400) self.send_response(400)
self.end_headers() self.end_headers()
self.server.POSTbusy = False self.server.POSTbusy = False
@ -3366,8 +3360,8 @@ class PubServer(BaseHTTPRequestHandler):
self.server.POSTbusy = False self.server.POSTbusy = False
return return
except ValueError as e: except ValueError as e:
print('ERROR: POST removePostConfirmParams rfile.read failed') print('ERROR: POST removePostConfirmParams rfile.read failed, ' +
print(e) str(e))
self.send_response(400) self.send_response(400)
self.end_headers() self.end_headers()
self.server.POSTbusy = False self.server.POSTbusy = False
@ -3491,8 +3485,7 @@ class PubServer(BaseHTTPRequestHandler):
self.server.POSTbusy = False self.server.POSTbusy = False
return return
except ValueError as e: except ValueError as e:
print('ERROR: failed to read bytes for POST') print('ERROR: failed to read bytes for POST, ' + str(e))
print(e)
self.send_response(400) self.send_response(400)
self.end_headers() self.end_headers()
self.server.POSTbusy = False self.server.POSTbusy = False
@ -3621,8 +3614,7 @@ class PubServer(BaseHTTPRequestHandler):
self.server.POSTbusy = False self.server.POSTbusy = False
return return
except ValueError as e: except ValueError as e:
print('ERROR: failed to read bytes for POST') print('ERROR: failed to read bytes for POST, ' + str(e))
print(e)
self.send_response(400) self.send_response(400)
self.end_headers() self.end_headers()
self.server.POSTbusy = False self.server.POSTbusy = False
@ -3701,8 +3693,7 @@ class PubServer(BaseHTTPRequestHandler):
self.server.POSTbusy = False self.server.POSTbusy = False
return return
except ValueError as e: except ValueError as e:
print('ERROR: failed to read bytes for POST') print('ERROR: failed to read bytes for POST, ' + str(e))
print(e)
self.send_response(400) self.send_response(400)
self.end_headers() self.end_headers()
self.server.POSTbusy = False self.server.POSTbusy = False
@ -3815,8 +3806,7 @@ class PubServer(BaseHTTPRequestHandler):
return return
except ValueError as e: except ValueError as e:
print('ERROR: failed to read bytes for ' + print('ERROR: failed to read bytes for ' +
'citations screen POST') 'citations screen POST, ' + str(e))
print(e)
self.send_response(400) self.send_response(400)
self.end_headers() self.end_headers()
self.server.POSTbusy = False self.server.POSTbusy = False
@ -3913,8 +3903,7 @@ class PubServer(BaseHTTPRequestHandler):
self.server.POSTbusy = False self.server.POSTbusy = False
return return
except ValueError as e: except ValueError as e:
print('ERROR: failed to read bytes for POST') print('ERROR: failed to read bytes for POST, ' + str(e))
print(e)
self.send_response(400) self.send_response(400)
self.end_headers() self.end_headers()
self.server.POSTbusy = False self.server.POSTbusy = False
@ -4033,8 +4022,7 @@ class PubServer(BaseHTTPRequestHandler):
self.server.POSTbusy = False self.server.POSTbusy = False
return return
except ValueError as e: except ValueError as e:
print('ERROR: failed to read bytes for POST') print('ERROR: failed to read bytes for POST, ' + str(e))
print(e)
self.send_response(400) self.send_response(400)
self.end_headers() self.end_headers()
self.server.POSTbusy = False self.server.POSTbusy = False
@ -10000,7 +9988,7 @@ class PubServer(BaseHTTPRequestHandler):
if css: if css:
break break
except Exception as e: except Exception as e:
print(e) print('ERROR: _getStyleSheet ' + str(tries) + ' ' + str(e))
time.sleep(1) time.sleep(1)
tries += 1 tries += 1
msg = css.encode('utf-8') msg = css.encode('utf-8')
@ -10038,7 +10026,7 @@ class PubServer(BaseHTTPRequestHandler):
mediaBinary = avFile.read() mediaBinary = avFile.read()
break break
except Exception as e: except Exception as e:
print(e) print('ERROR: _showQRcode ' + str(tries) + ' ' + str(e))
time.sleep(1) time.sleep(1)
tries += 1 tries += 1
if mediaBinary: if mediaBinary:
@ -10077,7 +10065,8 @@ class PubServer(BaseHTTPRequestHandler):
mediaBinary = avFile.read() mediaBinary = avFile.read()
break break
except Exception as e: except Exception as e:
print(e) print('ERROR: _searchScreenBanner ' +
str(tries) + ' ' + str(e))
time.sleep(1) time.sleep(1)
tries += 1 tries += 1
if mediaBinary: if mediaBinary:
@ -10119,7 +10108,7 @@ class PubServer(BaseHTTPRequestHandler):
mediaBinary = avFile.read() mediaBinary = avFile.read()
break break
except Exception as e: except Exception as e:
print(e) print('ERROR: _columnImage ' + str(tries) + ' ' + str(e))
time.sleep(1) time.sleep(1)
tries += 1 tries += 1
if mediaBinary: if mediaBinary:
@ -10162,7 +10151,8 @@ class PubServer(BaseHTTPRequestHandler):
bgBinary = avFile.read() bgBinary = avFile.read()
break break
except Exception as e: except Exception as e:
print(e) print('ERROR: _showBackgroundImage ' +
str(tries) + ' ' + str(e))
time.sleep(1) time.sleep(1)
tries += 1 tries += 1
if bgBinary: if bgBinary:
@ -11473,7 +11463,8 @@ class PubServer(BaseHTTPRequestHandler):
mediaBinary = avFile.read() mediaBinary = avFile.read()
break break
except Exception as e: except Exception as e:
print(e) print('ERROR: manifest logo ' +
str(tries) + ' ' + str(e))
time.sleep(1) time.sleep(1)
tries += 1 tries += 1
if mediaBinary: if mediaBinary:
@ -11513,7 +11504,8 @@ class PubServer(BaseHTTPRequestHandler):
mediaBinary = avFile.read() mediaBinary = avFile.read()
break break
except Exception as e: except Exception as e:
print(e) print('ERROR: manifest screenshot ' +
str(tries) + ' ' + str(e))
time.sleep(1) time.sleep(1)
tries += 1 tries += 1
if mediaBinary: if mediaBinary:
@ -11558,7 +11550,8 @@ class PubServer(BaseHTTPRequestHandler):
mediaBinary = avFile.read() mediaBinary = avFile.read()
break break
except Exception as e: except Exception as e:
print(e) print('ERROR: login screen image ' +
str(tries) + ' ' + str(e))
time.sleep(1) time.sleep(1)
tries += 1 tries += 1
if mediaBinary: if mediaBinary:
@ -13876,8 +13869,7 @@ class PubServer(BaseHTTPRequestHandler):
print('WARN: POST postBytes socket error') print('WARN: POST postBytes socket error')
return None return None
except ValueError as e: except ValueError as e:
print('ERROR: POST postBytes rfile.read failed') print('ERROR: POST postBytes rfile.read failed, ' + str(e))
print(e)
return None return None
# second length check from the bytes received # second length check from the bytes received
@ -13918,8 +13910,8 @@ class PubServer(BaseHTTPRequestHandler):
print('WARN: handle POST messageBytes socket error') print('WARN: handle POST messageBytes socket error')
return {} return {}
except ValueError as e: except ValueError as e:
print('ERROR: handle POST messageBytes rfile.read failed') print('ERROR: handle POST messageBytes rfile.read failed ' +
print(e) str(e))
return {} return {}
lenMessage = len(messageBytes) lenMessage = len(messageBytes)
@ -13961,8 +13953,7 @@ class PubServer(BaseHTTPRequestHandler):
print('WARN: POST messageBytes socket error') print('WARN: POST messageBytes socket error')
return {} return {}
except ValueError as e: except ValueError as e:
print('ERROR: POST messageBytes rfile.read failed') print('ERROR: POST messageBytes rfile.read failed, ' + str(e))
print(e)
return {} return {}
lenMessage = len(messageBytes) lenMessage = len(messageBytes)
@ -14580,8 +14571,8 @@ class PubServer(BaseHTTPRequestHandler):
self.server.POSTbusy = False self.server.POSTbusy = False
return return
except ValueError as e: except ValueError as e:
print('ERROR: POST unknownPost rfile.read failed') print('ERROR: POST unknownPost rfile.read failed, ' +
print(e) str(e))
self.send_response(400) self.send_response(400)
self.end_headers() self.end_headers()
self.server.POSTbusy = False self.server.POSTbusy = False
@ -14625,8 +14616,7 @@ class PubServer(BaseHTTPRequestHandler):
self.server.POSTbusy = False self.server.POSTbusy = False
return return
except ValueError as e: except ValueError as e:
print('ERROR: POST messageBytes rfile.read failed') print('ERROR: POST messageBytes rfile.read failed, ' + str(e))
print(e)
self.send_response(400) self.send_response(400)
self.end_headers() self.end_headers()
self.server.POSTbusy = False self.server.POSTbusy = False

View File

@ -674,7 +674,7 @@ def deleteAllPosts(baseDir: str,
elif os.path.isdir(filePath): elif os.path.isdir(filePath):
shutil.rmtree(filePath) shutil.rmtree(filePath)
except Exception as e: except Exception as e:
print(e) print('ERROR: deleteAllPosts ' + str(e))
def savePostToBox(baseDir: str, httpPrefix: str, postId: str, def savePostToBox(baseDir: str, httpPrefix: str, postId: str,

View File

@ -21,19 +21,16 @@ def createSession(proxyType: str):
try: try:
session = requests.session() session = requests.session()
except requests.exceptions.RequestException as e: except requests.exceptions.RequestException as e:
print('WARN: requests error during createSession') print('WARN: requests error during createSession ' + str(e))
print(e)
return None return None
except SocketError as e: except SocketError as e:
if e.errno == errno.ECONNRESET: if e.errno == errno.ECONNRESET:
print('WARN: connection was reset during createSession') print('WARN: connection was reset during createSession ' + str(e))
else: else:
print('WARN: socket error during createSession') print('WARN: socket error during createSession ' + str(e))
print(e)
return None return None
except ValueError as e: except ValueError as e:
print('WARN: error during createSession') print('WARN: error during createSession ' + str(e))
print(e)
return None return None
if not session: if not session:
return None return None
@ -126,14 +123,12 @@ def getJson(session, url: str, headers: {}, params: {}, debug: bool,
if debug and not quiet: if debug and not quiet:
print('ERROR: getJson failed\nurl: ' + str(url) + ' ' + print('ERROR: getJson failed\nurl: ' + str(url) + ' ' +
'headers: ' + str(sessionHeaders2) + ' ' + 'headers: ' + str(sessionHeaders2) + ' ' +
'params: ' + str(sessionParams) + ' ') 'params: ' + str(sessionParams) + ' ' + str(e))
print(e)
except SocketError as e: except SocketError as e:
if not quiet: if not quiet:
if e.errno == errno.ECONNRESET: if e.errno == errno.ECONNRESET:
print('WARN: getJson failed, ' + print('WARN: getJson failed, ' +
'connection was reset during getJson') 'connection was reset during getJson ' + str(e))
print(e)
return None return None
@ -161,8 +156,8 @@ def postJson(session, postJsonObject: {}, federationList: [],
except requests.exceptions.RequestException as e: except requests.exceptions.RequestException as e:
if not quiet: if not quiet:
print('ERROR: postJson requests failed ' + inboxUrl + ' ' + print('ERROR: postJson requests failed ' + inboxUrl + ' ' +
json.dumps(postJsonObject) + ' ' + str(headers)) json.dumps(postJsonObject) + ' ' + str(headers) +
print(e) ' ' + str(e))
return None return None
except SocketError as e: except SocketError as e:
if not quiet and e.errno == errno.ECONNRESET: if not quiet and e.errno == errno.ECONNRESET:
@ -171,8 +166,8 @@ def postJson(session, postJsonObject: {}, federationList: [],
except ValueError as e: except ValueError as e:
if not quiet: if not quiet:
print('ERROR: postJson failed ' + inboxUrl + ' ' + print('ERROR: postJson failed ' + inboxUrl + ' ' +
json.dumps(postJsonObject) + ' ' + str(headers)) json.dumps(postJsonObject) + ' ' + str(headers) +
print(e) ' ' + str(e))
return None return None
if postResult: if postResult:
return postResult.text return postResult.text
@ -198,8 +193,7 @@ def postJsonString(session, postJsonStr: str,
headers=headers, timeout=timeoutSec) headers=headers, timeout=timeoutSec)
except requests.exceptions.RequestException as e: except requests.exceptions.RequestException as e:
if not quiet: if not quiet:
print('WARN: error during postJsonString requests') print('WARN: error during postJsonString requests ' + str(e))
print(e)
return None, None return None, None
except SocketError as e: except SocketError as e:
if not quiet and e.errno == errno.ECONNRESET: if not quiet and e.errno == errno.ECONNRESET:
@ -210,8 +204,7 @@ def postJsonString(session, postJsonStr: str,
return None, None return None, None
except ValueError as e: except ValueError as e:
if not quiet: if not quiet:
print('WARN: error during postJsonString') print('WARN: error during postJsonString ' + str(e))
print(e)
return None, None return None, None
if postResult.status_code < 200 or postResult.status_code > 202: if postResult.status_code < 200 or postResult.status_code > 202:
if postResult.status_code >= 400 and \ if postResult.status_code >= 400 and \
@ -265,19 +258,16 @@ def postImage(session, attachImageFilename: str, federationList: [],
postResult = session.post(url=inboxUrl, data=mediaBinary, postResult = session.post(url=inboxUrl, data=mediaBinary,
headers=headers) headers=headers)
except requests.exceptions.RequestException as e: except requests.exceptions.RequestException as e:
print('WARN: error during postImage requests') print('WARN: error during postImage requests ' + str(e))
print(e)
return None return None
except SocketError as e: except SocketError as e:
if e.errno == errno.ECONNRESET: if e.errno == errno.ECONNRESET:
print('WARN: connection was reset during postImage') print('WARN: connection was reset during postImage')
print('ERROR: postImage failed ' + inboxUrl + ' ' + print('ERROR: postImage failed ' + inboxUrl + ' ' +
str(headers)) str(headers) + ' ' + str(e))
print(e)
return None return None
except ValueError as e: except ValueError as e:
print('WARN: error during postImage') print('WARN: error during postImage ' + str(e))
print(e)
return None return None
if postResult: if postResult:
return postResult.text return postResult.text

View File

@ -493,9 +493,8 @@ def updateAvatarImageCache(session, baseDir: str, httpPrefix: str,
print('avatar image downloaded for ' + actor) print('avatar image downloaded for ' + actor)
return avatarImageFilename.replace(baseDir + '/cache', '') return avatarImageFilename.replace(baseDir + '/cache', '')
except Exception as e: except Exception as e:
if debug: print('WARN: Failed to download avatar image: ' +
print('Failed to download avatar image: ' + str(avatarUrl)) str(avatarUrl) + ' ' + str(e))
print(e)
prof = 'https://www.w3.org/ns/activitystreams' prof = 'https://www.w3.org/ns/activitystreams'
if '/channel/' not in actor or '/accounts/' not in actor: if '/channel/' not in actor or '/accounts/' not in actor:
sessionHeaders = { sessionHeaders = {
@ -949,7 +948,8 @@ def loadIndividualPostAsHtmlFromCache(baseDir: str,
postHtml = file.read() postHtml = file.read()
break break
except Exception as e: except Exception as e:
print(e) print('ERROR: loadIndividualPostAsHtmlFromCache ' +
str(tries) + ' ' + str(e))
# no sleep # no sleep
tries += 1 tries += 1
if postHtml: if postHtml:

View File

@ -78,7 +78,7 @@ def webfingerHandle(session, handle: str, httpPrefix: str,
debug, projectVersion, debug, projectVersion,
httpPrefix, fromDomain) httpPrefix, fromDomain)
except Exception as e: except Exception as e:
print(e) print('ERROR: webfingerHandle ' + str(e))
return None return None
if result: if result: