Size: a a a

Django [ru] #STAY HOME

2020 June 06

AD

Alex Dem in Django [ru] #STAY HOME
Alex S
К сожалению не вышло, вызывал вот так
+ просто таск пробовал и periodic task…. Может не там вызываю функцию с делеем…. Так нет же, ее вроде достаточно 1 раз вызвать чтобы задача выполнялась

app.conf.celery_beat = {
   'send-daily-crypto': {
       'task': 'bot.tasks.send_daily_cryptocurrency',
       'schedule': crontab(minute='*/2'),
   },
}


В логах пишет такое:

[2020-06-06 17:16:12,287: INFO/MainProcess] celery@e6515c58-cbbf-4649-9b39-9f255d406c9d ready.
[2020-06-06 17:16:15,879: INFO/Beat] Writing entries...
при этом, для celery beat отдельно работали воркеры в loop режиме
источник

AD

Alex Dem in Django [ru] #STAY HOME
Alex S
К сожалению не вышло, вызывал вот так
+ просто таск пробовал и periodic task…. Может не там вызываю функцию с делеем…. Так нет же, ее вроде достаточно 1 раз вызвать чтобы задача выполнялась

app.conf.celery_beat = {
   'send-daily-crypto': {
       'task': 'bot.tasks.send_daily_cryptocurrency',
       'schedule': crontab(minute='*/2'),
   },
}


В логах пишет такое:

[2020-06-06 17:16:12,287: INFO/MainProcess] celery@e6515c58-cbbf-4649-9b39-9f255d406c9d ready.
[2020-06-06 17:16:15,879: INFO/Beat] Writing entries...
https://rahmonov.me/posts/periodic-tasks-with-celery/

вот pretty simplified  пример
начни с чего-то простого
источник

AS

Alex S in Django [ru] #STAY HOME
Alex Dem
.delay() - это просто передача задачи на "плечи celery"
моментально и один раз

у меня, к сожалению, уже не осталось готового паттерна с periodic_task на гит, но я писал года полтора назад, ключевыми аспектами было использование @periodic_task декоратора над функциями и запуск через celery beat
Я пока учусь, сделал все на локале - работает идеально,  как сделать  на сервере - два дня бьюсь и просто хотя бы избавиться от того же task events: OFF
источник

AD

Alex Dem in Django [ru] #STAY HOME
Alex S
Я пока учусь, сделал все на локале - работает идеально,  как сделать  на сервере - два дня бьюсь и просто хотя бы избавиться от того же task events: OFF
" task events: OFF"
что ты имеешь ввиду?
источник

AS

Alex S in Django [ru] #STAY HOME
Alex Dem
" task events: OFF"
что ты имеешь ввиду?
источник

AD

Alex Dem in Django [ru] #STAY HOME
а ты можешь дать полный трейс?
я не обещаю помочь, селери знаю посредственно
но так вообще непонятно
источник

AS

Alex S in Django [ru] #STAY HOME
Alex Dem
а ты можешь дать полный трейс?
я не обещаю помочь, селери знаю посредственно
но так вообще непонятно
Да, конечно, вот https://pastebin.com/J308Ruid
источник

AD

Alex Dem in Django [ru] #STAY HOME
task events: OFF (enable -E to monitor tasks in this worker)

я так понимаю, предлагается использовать флаг -Е для нормального вывода логов консоль
источник

AS

Alex S in Django [ru] #STAY HOME
Сейчас попробую
источник

AD

Alex Dem in Django [ru] #STAY HOME
Alex S
Сейчас попробую
а какой командой запускаешь?
источник

AS

Alex S in Django [ru] #STAY HOME
worker: celery -A testbot worker -l info --beat --scheduler django_celery_beat.schedulers:DatabaseScheduler
источник

AD

Alex Dem in Django [ru] #STAY HOME
Alex S
worker: celery -A testbot worker -l info --beat --scheduler django_celery_beat.schedulers:DatabaseScheduler
--beat точно работает?
я как-то по-другому запускал вроде бы
источник

AD

Alex Dem in Django [ru] #STAY HOME
чувак в гайде тоже не так указывает, что это beat
источник

AS

Alex S in Django [ru] #STAY HOME
Есть -B, но результат такой же будет
источник

AD

Alex Dem in Django [ru] #STAY HOME
но я не претендую на "адекватность"
источник

AD

Alex Dem in Django [ru] #STAY HOME
Alex S
Есть -B, но результат такой же будет
погоди, погоди
если ты используешь флаг, ты должен понимать, что он хотя бы существует
источник

AS

Alex S in Django [ru] #STAY HOME
Ну то есть…. существует, оно работало
источник

AD

Alex Dem in Django [ru] #STAY HOME
Alex S
Ну то есть…. существует, оно работало
ну ты отталкивался от какой-то документации?
источник

AD

Alex Dem in Django [ru] #STAY HOME
да, судя по стаку так тоже можно
источник

AS

Alex S in Django [ru] #STAY HOME
Alex Dem
ну ты отталкивался от какой-то документации?
Не совсем, нашел на стековерфлоу…. Кстати, с -E такая же штука, только task events: ON и так же не работает
источник