2016-07-20 10 views
-1

私のセロリでは、仕事の中で印刷を試みましたが、コンソールでもデータを出力できないようです。セロリの仕事の中には印刷しません

/app.py 
@app.route('//create', methods = ['POST']) 
def create_file(): 
request.form ....... 
callback = build_file.s(name, address) 
header = [ send_param.s(id, key) for key in request_api.keys() ] 
result = chord(header)(callback) 

@celery.task(name='app.send_param', routing_key='send_param', queue='send_param', retry=False, bind=True) 
def send_param(seld, id, key): 
    //do something 
    print 'NOT WORKING' 

@celery.task(name='app.build_file', routing_key='send_param', queue='send_param', retry=False, bind=True) 
def build_file(seld, name, address): 
    //do something 
    print 'NOT WORKING' 

しかし、それは印刷を行い、私のCREATE_FILE関数内で印刷する私の仕事の中に、それはdoesntの:

は、ここに私の構造体です。

1)logger.info()(およびその他のログレベルからのすべての出力をキャプチャしますLoggerインスタンス)を設定し、ローカルファイルにそれを置くか、単にstdout

2:に

答えて

0

最も簡単な解決策は次のようになりますhttp://docs.celeryproject.org/en/latest/configuration.html#logging):)設定時に、以前に構成されたロガー(詳細を取り除くからセロリを防ぐために

app.conf.update(CELERYD_HIJACK_ROOT_LOGGER=False) 

を設定します。


別のオプションは、Siglansを使用することができますhttp://docs.celeryproject.org/en/latest/userguide/signals.html

が、それはもう少し複雑で、あなたの状況では、おそらく過剰です。

関連する問題