Celery 登录 Heroku

And*_*zub 1 python heroku celery

我在 Heroku 上部署了一个 Celery 应用程序,但是在 Heroku 日志中我没有看到任何与任务相关的信息(我知道任务实际上已执行)。据我所知,Heroku 会自动收集记录到 stdout 或 stderr 的所有内容。Celery 默认不登录到 stdout/stderr 吗?还是我需要实现自定义日志记录?我希望至少在日志中看到类似“执行任务 X”的内容。

Rob*_*kal 5

如果您的 celery 工作人员正在发布打印语句或使用标准的 python 日志类,那么您应该在您的 heroku 日志中看到如下所示的内容:

2015-04-25T00:25:00.072929+00:00 app[celeryd.1]: [2015-04-25 00:25:00,072: INFO/Beat] 调度程序:发送到期任务竞赛获胜者 (app.contest_win)

celeryd 将被您在 ProcFile 中命名为 celery worker 的任何内容替换。我的看起来像这样,您可以在上面的日志记录语句中看到进程标签:

celeryd: celery -A app.celery worker -E -B --loglevel=INFO
Run Code Online (Sandbox Code Playgroud)

当然,您也必须设置日志级别:)。