Open szelga opened 9 years ago
here's the debug output:
$ celery -A apps.myproject beat -l debug -S celerybeatredis.schedulers.RedisScheduler
celery beat v3.1.17 (Cipater) is starting.
__ - ... __ - _
Configuration ->
. broker -> redis://localhost:6379/0
. loader -> celery.loaders.app.AppLoader
. scheduler -> celerybeatredis.schedulers.RedisScheduler
. logfile -> [stderr]@%DEBUG
. maxinterval -> now (0s)
[2014-12-23 20:39:16,164: DEBUG/MainProcess] Setting default socket timeout to 30
[2014-12-23 20:39:16,164: INFO/MainProcess] beat: Starting...
[2014-12-23 20:39:16,164: INFO/MainProcess] backend scheduler using redis://localhost:6379/0
[2014-12-23 20:39:16,164: DEBUG/MainProcess] beat: Ticking with max interval->5.00 minutes
[2014-12-23 20:39:16,165: DEBUG/MainProcess] beat: Waking up in 5.00 minutes.
why does it wake in 5 min.? is it some redis limitation?
yep, it ignore CELERYBEAT_SCHEDULE,because you must make schedule in redis。CELERYBEAT_SCHEDULE only reads by the builtin scheduler. please read README, it explained how to set your scheduler.
Hi, I just encountered the same problem, by following the project readme.
I tried to start celery beat with celerybeatredis.schedulers.RedisScheduler
but it didn't load the scheduled tasks in celeryconfig.py
, but when I start the beat using build-in scheduler, it works.
This section says that celerybeat-redis
will load CELERYBEAT_SCHEDULE
into redis, should we delete it? @kongluoxing
$ celery -A tackle.app:tackleapp beat --loglevel=DEBUG
celery beat v3.1.23 (Cipater) is starting.
__ - ... __ - _
Configuration ->
. broker -> redis://someredis.net:6379/0
. loader -> celery.loaders.app.AppLoader
. scheduler -> celery.beat.PersistentScheduler
. db -> celerybeat-schedule
. logfile -> [stderr]@%DEBUG
. maxinterval -> now (0s)
[2016-04-21 14:37:26,917: DEBUG/MainProcess] Setting default socket timeout to 30
[2016-04-21 14:37:26,918: INFO/MainProcess] beat: Starting...
[2016-04-21 14:37:26,935: DEBUG/MainProcess] Current schedule:
<Entry: monitor-eru-apps tackle.tasks.trigger_monitor_eru_apps() <crontab: * * * * * (m/h/d/dM/MY)>
<Entry: celery.backend_cleanup celery.backend_cleanup() <crontab: 0 4 * * * (m/h/d/dM/MY)>
[2016-04-21 14:37:26,936: DEBUG/MainProcess] beat: Ticking with max interval->5.00 minutes
[2016-04-21 14:37:26,973: DEBUG/MainProcess] beat: Waking up in 33.02 seconds.
RedisScheduler
$ celery -A tackle.app:tackleapp beat -S celerybeatredis.schedulers.RedisScheduler --loglevel=DEBUG
celery beat v3.1.23 (Cipater) is starting.
__ - ... __ - _
Configuration ->
. broker -> redis://someredis:6379/0
. loader -> celery.loaders.app.AppLoader
. scheduler -> celerybeatredis.schedulers.RedisScheduler
. db -> redis://someredis.net
. logfile -> [stderr]@%DEBUG
. maxinterval -> now (0s)
[2016-04-21 14:37:35,055: DEBUG/MainProcess] Setting default socket timeout to 30
[2016-04-21 14:37:35,055: INFO/MainProcess] beat: Starting...
[2016-04-21 14:37:35,055: INFO/MainProcess] backend scheduler using redis://someredis.net
[2016-04-21 14:37:35,062: DEBUG/MainProcess] beat: Ticking with max interval->5.00 minutes
[2016-04-21 14:37:35,062: DEBUG/MainProcess] RedisScheduler: Fetching database schedule
[2016-04-21 14:37:35,064: DEBUG/MainProcess] DB schedule : {}
[2016-04-21 14:37:35,064: DEBUG/MainProcess] beat: Waking up in 5.00 minutes.
^C[2016-04-21 14:37:35,752: INFO/MainProcess] Writing modified entries...
[2016-04-21 14:37:35,752: INFO/MainProcess] Writing modified entries...
I'll check this, RedisScheduler should load entries from celeryconfig
@kongluoxing
Can this issue be closed with the merge of #16?
my configuration:
related packages: