fix: resolve merge conflicts in ticket_whitelist, add retry logic for port 5001 in bug_report, and implement live GitLab issue deduplication in logger
This commit is contained in:
parent
c40c3f1f12
commit
16263d88bc
6 changed files with 525 additions and 54 deletions
|
|
@ -116,13 +116,40 @@ class BugReport(commands.Cog):
|
|||
self.web_app.router.add_post('/bot_event', self.handle_bot_event)
|
||||
self.runner = web.AppRunner(self.web_app)
|
||||
await self.runner.setup()
|
||||
self.site = web.TCPSite(self.runner, '127.0.0.1', 5001)
|
||||
await self.site.start()
|
||||
kuby_logger.info("Internal Bot Webhook Server started on 127.0.0.1:5001")
|
||||
|
||||
max_retries = 5
|
||||
retry_delay = 2
|
||||
|
||||
for attempt in range(1, max_retries + 1):
|
||||
try:
|
||||
self.site = web.TCPSite(self.runner, '127.0.0.1', 5001)
|
||||
await self.site.start()
|
||||
kuby_logger.info(f"Internal Bot Webhook Server started on 127.0.0.1:5001 (Attempt {attempt})")
|
||||
return
|
||||
except OSError as e:
|
||||
if e.errno == 98: # Address already in use
|
||||
if attempt < max_retries:
|
||||
kuby_logger.warning(f"Port 5001 already in use, retrying in {retry_delay}s... ({attempt}/{max_retries})")
|
||||
await asyncio.sleep(retry_delay)
|
||||
else:
|
||||
kuby_logger.error(f"Failed to bind to port 5001 after {max_retries} attempts.")
|
||||
raise e
|
||||
else:
|
||||
raise e
|
||||
|
||||
def cog_unload(self):
|
||||
if hasattr(self, 'runner'):
|
||||
self.bot.loop.create_task(self.runner.cleanup())
|
||||
# On utilise create_task car cog_unload est synchrone
|
||||
async def cleanup():
|
||||
try:
|
||||
if hasattr(self, 'site'):
|
||||
await self.site.stop()
|
||||
await self.runner.cleanup()
|
||||
kuby_logger.info("Internal Bot Webhook Server stopped and cleaned up.")
|
||||
except Exception as e:
|
||||
kuby_logger.error(f"Error during webhook server cleanup: {e}")
|
||||
|
||||
self.bot.loop.create_task(cleanup())
|
||||
|
||||
async def handle_bot_event(self, request):
|
||||
try:
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue