【问题标题】:Celeryd script printing output 2x, when 0x is desiredCeleryd 脚本打印输出 2x,当需要 0x 时
【发布时间】:2012-03-19 09:25:24
【问题描述】:

这是我运行 celeryd 的小脚本:

#!/bin/bash -x
LOG=/home/var/log/ingest.log
sudo -u apache bash -c "nohup `pwd`/bin/django celeryd --purge --beat --loglevel=INFO >> $LOG &"

我以普通用户身份运行脚本,并在请求时输入 root 密码。

我真的不希望看到任何输出——所有内容都发送到日志中。相反,我看到一切都翻了一番:

[2012-03-19 19:54:38,987: INFO/PoolWorker-2] Received feed. 0 new entries out of 3 to process.
[2012-03-19 19:54:38,987: INFO/PoolWorker-2] Received feed. 0 new entries out of 3 to process.
[2012-03-19 19:54:38,988: INFO/MainProcess] Task atom_ingest.walk_feed[64d8e6c7-2ab4-4082-9d67-a8ecca9a4f7a] succeeded in 1.85489702225s: None
[2012-03-19 19:54:38,988: INFO/MainProcess] Task atom_ingest.walk_feed[64d8e6c7-2ab4-4082-9d67-a8ecca9a4f7a] succeeded in 1.85489702225s: None
[2012-03-19 19:55:32,083: INFO/Beat] Scheduler: Sending due task atom_ingest.walk_feeds
[2012-03-19 19:55:32,083: INFO/Beat] Scheduler: Sending due task atom_ingest.walk_feeds
[2012-03-19 19:55:32,285: INFO/MainProcess] Got task from broker: atom_ingest.walk_feeds[e65ddc54-23a5-46a0-86df-92479f79655b]
[2012-03-19 19:55:32,285: INFO/MainProcess] Got task from broker: atom_ingest.walk_feeds[e65ddc54-23a5-46a0-86df-92479f79655b]

这个输出全部来自“后台”,这意味着当我做其他事情时它会在我的终端上喷出。

我不确定我的错误是否在于我对 bash、celeryd、nohup 的理解...?

【问题讨论】:

    标签: django bash celery nohup


    【解决方案1】:

    您可以告诉 celeryd 使用选项-f 登录到文件。

    你仍然会得到一些输出。 celeryd 似乎忽略了任何使用输出 2>&1 > /your/file/ 重定向的尝试。

    P.S:我建议您查看 Supervisor 之类的东西来管理您的流程。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-03-21
      • 2012-11-27
      • 2021-01-11
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多