Verbose feed logging
This commit is contained in:
parent
a24ab2dcf0
commit
83d752c1a2
@ -33,7 +33,7 @@ class Feed(models.Model):
|
||||
execute_feed.delay(self.pk)
|
||||
|
||||
def __str__(self):
|
||||
return self.title
|
||||
return f'#{self.pk} {self.title}'
|
||||
|
||||
class Meta:
|
||||
unique_together = ('config_type', 'config_id')
|
||||
|
@ -1,3 +1,4 @@
|
||||
import sentry_sdk
|
||||
from celery_once import QueueOnce
|
||||
from django.utils import timezone
|
||||
from telebot import TeleBot
|
||||
@ -24,19 +25,27 @@ def execute_feed(feed_pk):
|
||||
feed = None
|
||||
try:
|
||||
feed = Feed.objects.get(pk=feed_pk)
|
||||
print(f'Processing feed "{feed}"')
|
||||
|
||||
if not feed.lock:
|
||||
feed.lock = True
|
||||
feed.save()
|
||||
else:
|
||||
print(f'Lock detected, aborting "{feed}"...')
|
||||
return
|
||||
|
||||
bot = TeleBot(config.feed_bot_token, threaded=False)
|
||||
print(f'Last ID for "{feed}" = "{feed.last_id}"')
|
||||
for last_id in feed.config.execute(bot, feed.chat_id, feed.last_id):
|
||||
if last_id:
|
||||
feed.last_id = last_id
|
||||
feed.save()
|
||||
print(f'Saved last ID for "{feed}" = "{feed.last_id}"')
|
||||
bot.stop_bot()
|
||||
feed.last_check = timezone.now()
|
||||
feed.save()
|
||||
except Exception as e:
|
||||
sentry_sdk.capture_exception(e)
|
||||
finally:
|
||||
if feed:
|
||||
feed.lock = False
|
||||
|
Loading…
Reference in New Issue
Block a user