问题标签 [celerybeat]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - Celerybeat 无法按预期工作
我正在用瓶子构建一些项目,我需要它来定期运行某些预定的操作。
我决定使用 rabbitmq + celery,因为这似乎是以编程方式管理计划工作的最强大和最完整的解决方案。
我安装了 rabbitmq 和 celery 都很好,当我使用 celeryd -B 时,任务完成得很好。但是,当我使用 celerybeat 命令时,任务是“发送”的(或者说输出,因为我使用 -l 调试选项运行 celeryd 和 celerybeat 会更详细),但尽管它们经常被“发送”,但它们不会t 被执行(出于测试目的,任务应该每 60 秒将当前时间戳附加到文件中)。无论如何,其他一切工作正常,因为同一目录中的 celeryd -B 命令工作正常,它以预期的间隔写入文件。
我错过了什么吗?
这是 $celerybeat -l 调试的输出:
django - 芹菜/昆布忽略 run_every
我是我最近部署的kombu/celery 设置。任务执行良好,但似乎几乎连续运行,而不是尊重 run_every 属性。也许更奇怪的是,这种行为只出现在生产中并且在本地运行良好。
我的tasks.py
样子是这样的:
我的settings.py
包括
加上'djcelery'
和'kombu.transport.django'
在INSTALLED_APPS
。
在生产中,我python manage.py celeryd -v 2 -B -s celery -E -l INFO
开始运行我的任务。如果可以解决其他问题,我一直在关注 Chase Seibert 的教程。
python - 芹菜中的Django定期任务
我遇到了周期性任务未运行的问题。我使用 redis 作为后端,可以手动运行任务,这是 celery 调试日志
当我手动运行任务时,一切正常。时区在 django 和 celery 中是相同的
python - 如何配置和运行 celerybeat
我刚开始使用芹菜,试图运行一个定期任务。
配置 *rabbitmq** 添加了 celeryconfig.py。
并在tasks.py中添加以下代码:
现在,当我通过在终端中键入“celerybeat”来启动 celerybeat 时,它开始运行并显示以下消息
并且终端中没有every_2_seconds
方法的输出。我假设我必须在 celerybeat 命令期间指定要运行的应用程序或任务。如何做到这一点?
如何指定任务并在每 2 秒后打印一行作为定期任务?
谢谢。
celerybeat - 即使有时区设置,celerybeat 也使用 UTC
我发现 celerybeat 在其调度中使用 UTC 时间(并在英国时间输出日志?!)即使我相信我的 django settings.py 中有所需的设置:
我试过切换 TIME_ZONE 变量但没有运气
我在用:
谢谢
python - 动态改变 Celery Beat 设置
有没有办法告诉 celerybeat 在运行时更改特定任务的设置?
这个例子最好地说明了它的实用性:
我有一个定期任务,每 30 秒检查一次值。有时,基于外部触发器(我无法预测),我希望此任务将轮询频率提高到 10 秒 - 持续几分钟。
这是否以可管理的方式可行?我知道我可以更改任务配置并重新加载芹菜,但这似乎是一种混乱的做事方式......
django - 新贵 - Django 和 Celeryd
我有我的 Ubuntu 服务器设置,所以我的 Django 项目将由暴发户启动,如下所示:
如您所见,我还在最后添加了 celeryd。但它没有开始我确定它没有开始,因为我的任务没有完成。当我在服务器上的终端中启动它时:
manage.py celeryd -l info -B 它确实启动了,我可以看到正在完成的任务。
我应该如何从 Django 开始?
redis - 我怎样才能得到周期性任务调度的结果
嘿伙计们,我是芹菜的新手。我正在研究定期任务调度。我的配置celeryconfig.py
如下:
如下mytask.py
:
当我跑步时,
celery beat -s celerybeat-schedule
我会得到
Configuration ->
. broker -> redis://localhost:6379/0
. loader -> celery.loaders.default.Loader
. scheduler -> celery.beat.PersistentScheduler
. db -> celerybeat-schedule
. logfile -> [stderr]@INFO
. maxinterval -> now (0s)
[2012-08-28 12:27:17,825: INFO/MainProcess] Celerybeat: Starting...
[2012-08-28 12:28:00,041: INFO/MainProcess] Scheduler: Sending due task mytasks.add
[2012-08-28 12:29:00,057: INFO/MainProcess] Scheduler: Sending due task mytasks.add
[2012-08-28 12:30:00,064: INFO/MainProcess] Scheduler: Sending due task mytasks.add
[2012-08-28 12:31:00,097: INFO/MainProcess] Scheduler: Sending due task mytasks.add
现在我没有得到我已经传递了参数(16,16)
那么我怎么能得到这个函数的答案add(x,y)
celery - 想知道 celery 什么时候开始工作
我是新手celery
。我有一些配置celeryconfig.py
如下:
我已安排作业将在 30 秒内定期运行。现在我希望工作应该从那时开始29 aug
我4:00PM
应该如何配置它?
python - 带有 Mongo 连接错误的 Celerybeat
我正在尝试使用 celerybeat 设置一个 celery 任务队列,以便定期更新数据库。我的 celeryd 服务似乎运行良好,但 celerybeat 不断给我一个Connection error: [Errno 111]
:
这是我的 celeryconfig 文件:
我已经为此工作了很长时间,但仍然对为什么会收到此错误感到困惑。我的 MongoDB 没有用户/密码(完美地用于我的应用程序)。任何帮助将不胜感激!