我有一个Heroku工人dyno,它没有在Heroku日志中打印或记录任何内容。
我在 procfile 中设置了工作线程,以便所有 logging.info() 命令都应该工作:
worker: celery -A tasks worker -B --loglevel=info
这是 tasks.py 文件:
from celery import Celery
from celery.decorators import periodic_task
from celery.utils.log import get_task_logger
logger = get_task_logger(__name__)
import json
import settings, logging
import datetime
from mongoengine import DoesNotExist
app = Celery('tasks',
broker=settings.get('rabbitmq_bigwig_url'),
backend='amqp')
@periodic_task(run_every=datetime.timedelta(minutes=1))
def test():
print 'Not printing!'
logging.info('Also not printing!')
如何获取打印/日志记录消息以写入 Heroku 的日志?我已经尝试了所有的 Heroku 日志命令(heroku 日志、heroku logs --ps worker 等)
在您提供的示例中,您初始化了logger = get_task_logger(__name__)
,但是当您打算记录某些内容时,您使用的是logging.info(..)
。在最后一行中,将logging.
替换为 logger.
。