Catch errors in subreddit
This commit is contained in:
parent
3b04182ea2
commit
7f27fab5fb
1 changed files with 55 additions and 51 deletions
|
@ -119,6 +119,7 @@ async def _stream(sub: Sub, bot: Client, reddit: Reddit) -> None:
|
||||||
await sub.load()
|
await sub.load()
|
||||||
running.append(sub.display_name)
|
running.append(sub.display_name)
|
||||||
logger.debug(f"Streaming subreddit {sub.display_name}")
|
logger.debug(f"Streaming subreddit {sub.display_name}")
|
||||||
|
try:
|
||||||
async for post in sub.stream.submissions():
|
async for post in sub.stream.submissions():
|
||||||
if not post:
|
if not post:
|
||||||
logger.debug(f"Got None for post in {sub.display_name}")
|
logger.debug(f"Got None for post in {sub.display_name}")
|
||||||
|
@ -165,7 +166,8 @@ async def _stream(sub: Sub, bot: Client, reddit: Reddit) -> None:
|
||||||
continue
|
continue
|
||||||
except Exception:
|
except Exception:
|
||||||
logger.error(
|
logger.error(
|
||||||
f"Failed to send message to {channel.id} in {channel.guild.name}", exc_info=True
|
f"Failed to send message to {channel.id} in {channel.guild.name}",
|
||||||
|
exc_info=True,
|
||||||
)
|
)
|
||||||
|
|
||||||
gauge = reddit_gauge.labels(subreddit_name=sub.display_name)
|
gauge = reddit_gauge.labels(subreddit_name=sub.display_name)
|
||||||
|
@ -176,6 +178,8 @@ async def _stream(sub: Sub, bot: Client, reddit: Reddit) -> None:
|
||||||
if s:
|
if s:
|
||||||
await s.delete()
|
await s.delete()
|
||||||
break
|
break
|
||||||
|
except Exception:
|
||||||
|
logger.error(f"Subreddit stream {sub.display_name} failed", exc_info=True)
|
||||||
running.remove(sub.display_name)
|
running.remove(sub.display_name)
|
||||||
|
|
||||||
|
|
||||||
|
|
Loading…
Add table
Reference in a new issue