1

From a remote machine; how can I use mongostat from pymongo to get mongostats from pymongo? I am usinng rep sets.

c = Connection("50.xxx.xxx.xxx:27017",replicaSet='test')
rep_status = c.admin.command("replSetGetStatus")
mongostat = c.admin.command("mongostat")

pymongo.errors.OperationFailure: command SON([('mongostat', 1)]) failed: no such cmd: mongostat
4

2 に答える 2

2

serverStatus コマンドを使用します。

http://docs.mongodb.org/manual/reference/server-status/

次のようにpymongoから呼び出すことができますc.admin.command("serverStatus")

mongostat にあるのと同じ情報がすべて serverStatus の結果に表示されます (実際、mongostat が舞台裏で行っているのは、serverStatus コマンドの実行と、出力のフォーマット/印刷です)。

于 2013-04-12T15:39:05.370 に答える
1

stdlibのsubprocess モジュールを見てください。

from subprocess import call
call(["ls", "-l"])

に電話する必要がありますmongostat --host HOST --port PORT。レプリカ セットに接続するには、レプリカ セットのシード名とセット メンバーのシード リストを次の形式で指定できます。

<replica_set_name>/<hostname1><:port>,<hostname2:<port>,...

于 2013-02-22T11:10:27.400 に答える