Better error logging #33

Merged
osilkin98 merged 1 commit from error-logging into master 2020-01-20 05:13:10 +01:00
2 changed files with 5 additions and 7 deletions

View file

@ -29,16 +29,14 @@ def make_error(error, exc=None) -> dict:
return body
async def report_error(app, exc, msg=''):
async def report_error(app, exc, body: dict):
try:
if 'slack_webhook' in app['config']:
if msg:
msg = f'"{msg}"'
body = {
"text": f"Got `{type(exc).__name__}`: ```\n{str(exc)}```\n{msg}"
message = {
"text": f"Got `{type(exc).__name__}`: `\n{str(exc)}`\n```{body}```"
}
async with aiohttp.ClientSession() as sesh:
async with sesh.post(app['config']['slack_webhook'], json=body) as resp:
async with sesh.post(app['config']['slack_webhook'], json=message) as resp:
await resp.wait_for_close()
except Exception:

View file

@ -88,7 +88,7 @@ async def process_json(app, body: dict) -> dict:
response['error'] = make_error('INVALID_PARAMS', err)
else:
response['error'] = make_error('INTERNAL', err)
await app['webhooks'].spawn(report_error(app, err))
await app['webhooks'].spawn(report_error(app, err, body))
finally:
end = time.time()