2012-12-04 4 views
8

2つの異なるサーバーを使用してタスクを処理するセロリがセットアップされています。私は、タスクが完了したサーバーを照合する最良の方法を理解しようとしています。私はドキュメントを見て、AsyncResultからホスト名を取得することについて何も見ていませんでした。セロリーAsyncResultホスト名を取得

この件に関するご意見はありがとうございます。私が試して考えていたもう一つの選択肢は、単にセロリの各設定にホスト名を入れることです。しかし、この方法は望ましくありません。可能な回避策は、タスクの戻り値を持つホスト名を返して

答えて

5

from celery import current_task 

@celery.task 
def hello(x, y): 
    return dict(hostname=current_task.request.hostname, result='hello') 
+0

はご回答いただきありがとうございます。これが私が使い終わったアプローチです。私はこの記事を更新するのを忘れていました。私が立ち上げた主な問題は、ホスト名が、それぞれの対応にgimmeとして含めるべき貴重な情報であると感じていることです。 – user1595702

関連する問題