2017-01-29 5 views
0

私はmongoを初めて使い、admin serverStatusを使いこなしています。私にとっては、オブジェクトを期待しているときは常にfalseを返します。私は認証を有効にしてmongodを実行しています。必要な特定のユーザー権限がありますか?私は、nodejsドライバまたはmongodbマニュアルからAPIドキュメントによって提供されるもの以外の多くのドキュメントを見つけることができません。MongodbノードJS serverStatusは常にfalseを返します

MonogDB 3.4 NodeJSドライバ2.2

var MongoClient = require('mongodb').MongoClient; 
MongoClient.connect('mongodb://user:[email protected]:27017/test?authMechanism=DEFAULT&authSource=test', function(err, db) { 
    var adminDB = db.admin(); 
    adminDB.serverStatus(function(err, status) { 
    console.log(status); 
    db.close(); 
    }); 
}); 

ありがとう!

答えて

0

答えが見つかりました。認証が有効なデータベースでは、serverStatusアクションを使用して実行ユーザーにロールを付与する必要があります。

db.createRole(
    { 
    role: "mongostatRole", 
    privileges: [ 
     { resource: { cluster: true }, actions: [ "serverStatus" ] } 
    ], 
    roles: [] 
    } 
) 
関連する問題