From c6eaf071d2b167732628d3f15064b52dd4c5fc35 Mon Sep 17 00:00:00 2001 From: Ginger <75683114+gingerindustries@users.noreply.github.com> Date: Mon, 18 Dec 2023 19:04:56 +0000 Subject: [PATCH] Add GH error logging to files --- vyxalbot2/github/__init__.py | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/vyxalbot2/github/__init__.py b/vyxalbot2/github/__init__.py index 82510e1..1781cc2 100644 --- a/vyxalbot2/github/__init__.py +++ b/vyxalbot2/github/__init__.py @@ -3,6 +3,9 @@ from time import time import re +import json +import os +import traceback from aiohttp import ClientSession from aiohttp.web import Application, Request, Response @@ -114,6 +117,14 @@ async def appToken(self) -> str: return self._appToken.token raise ValueError("Unable to locate installation") + def writeErrorReport(self, event: GitHubEvent, error: Exception): + os.makedirs("errorlogs/gh/", exist_ok=True) + with open(f"errorlogs/gh/{event.delivery_id}.txt") as file: + file.write(f"--- Error log for Github delivery {event.delivery_id}\n") + file.write("\n\n--- Traceback information:\n") + file.writelines(traceback.format_exception(error)) + file.write("\n\n--- Delivery data:\n") + file.write(json.dumps(event.data, indent=4)) async def onHookRequest(self, request: Request) -> Response: event = None try: