14

celery.worker.consumer.Consumerプログラムで Python コードを使用して、現在のワーカーとそれに対応するインスタンスを一覧表示するにはどうすればよいですか?

4

3 に答える 3

30

celery.control.inspectを使用して、実行中のワーカーを検査できます。

>>> import celery
>>> celery.current_app.control.inspect().ping()
 {u'celery@host': {u'ok': u'pong'}}
于 2013-01-07T08:37:11.883 に答える
12

簡潔な答え:

your_celery_app.control.inspect().stats().keys()

一般に、そのstats()辞書は多くの情報を提供します。値の例を次に示します。

{u'broker': {u'alternates': [],
             u'connect_timeout': 4,
             u'heartbeat': 0,
             u'hostname': u'mypcisdabom',
             u'insist': False,
             u'login_method': u'AMQPLAIN',
             u'port': 5672,
             u'ssl': False,
             u'transport': u'amqp',
             u'transport_options': {},
             u'uri_prefix': None,
             u'userid': u'celeryabuser',
             u'virtual_host': u'celeryvhost'},
 u'clock': u'182309',
 u'pid': 1660,
 u'pool': {u'max-concurrency': 1,
           u'max-tasks-per-child': u'N/A',
           u'processes': [2496],
           u'put-guarded-by-semaphore': True,
           u'timeouts': [0, 0],
           u'writes': u'N/A'},
 u'prefetch_count': 4,
 u'rusage': u'N/A',
 u'total': {u'mymodule.my_func': 8}},
于 2014-07-08T16:15:37.403 に答える
1

--events起動時にキーを追加する場合。このモジュールをチェックして、現在のワーカーなどを確認できます。http://docs.celeryproject.org/en/latest/userguide/monitoring.html

于 2013-01-06T18:43:11.840 に答える