【问题标题】:Celery Flower show GMT time instead local timezone芹菜花秀格林威治标准时间而不是当地时区
【发布时间】:2016-04-18 07:35:49
【问题描述】:

我已经通过 pip 安装了 Flower,一切正常,但是当我看到 Flower 中的任务时间时,它显示的是 GMT 时间而不是时区时间。 Flower task options

  • Pythnon - 3.4
  • Django - 1.8.7
  • Redis 服务器 v=2.8.17
  • 芹菜 - 3.1.19

我的 celery 和 django 配置:

TIME_ZONE = 'Europe/Moscow'
USE_I18N = True
USE_L10N = True
USE_TZ = True
CELERY_ENABLE_UTC = True
CELERY_TIMEZONE = 'Europe/Moscow'

我尝试更改 TIME_ZONE 但它什么也没提供,或者设置 CELERY_ENABLE_UTS = False 如果我更改 celery 时区属性 - 它会在工作日志中更改。服务器上的硬件时间也是 13:52。

在工作日志中正确显示时间。

[2016-01-13 13:52:44,510: INFO/MainProcess] Received task: ***task[f652c89d-3f1b-4795-9e41-064ceb33b462]
[2016-01-13 13:52:45,529: INFO/MainProcess] Task ***task[f652c89d-3f1b-4795-9e41-064ceb33b462] succeeded in 1.0084812670002066s:

【问题讨论】:

  • 你用的是什么版本的芹菜?
  • 我试过了。据我了解 - 芹菜中的时间取决于问题在于展示其花朵的时间。
  • Celery 版本 3.1.19

标签: django celery flower


【解决方案1】:

设置 CELERY_ENABLE_UTC = False,如果您的 celery 版本高于 3.0 ,以便与 celery beat 保持一致,并且适用于所有时间表。

CELERY_ENABLE_UTC = False

设置 CELERY_TIMEZONE = '亚洲/上海'。让花时间显示得很好。

CELERY_TIMEZONE = 'Asia/Shanghai'

在 Flask 中,设置应该通过以下方式推送到 conf obj 中: celery.conf['CELERY_ENABLE_UTC'] = CELERY_ENABLE_UTC celery.conf['CELERY_TIMEZONE'] = CELERY_TIMEZONE

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-05-13
    • 1970-01-01
    • 2019-11-25
    • 1970-01-01
    • 2013-03-10
    • 2011-10-30
    • 2020-11-25
    • 2020-03-31
    相关资源
    最近更新 更多