2015-12-29 131 views
-1

如何查找連接到mongodb數據庫的特定客戶端。有沒有任何命令可以從Mongo shell中找到它。例如,如果有任何Web應用程序連接到數據庫,並且如果我想檢查它是否已連接並找到其IP地址,是否有任何方法可以找到它?如果有,請讓我知道。當我運行下面的命令時,它只顯示本地主機。其他客戶端不顯示。請幫忙。MongoDB:查找連接到Mongodb數據庫的客戶端

RS:PRIMARY> db.currentOp(真).inprog.forEach(函數(d){如果(d.client)printjson(d.client)}) 「127.0.0.1:43424」 「127.0。 0.1:58214" 「127.0.0.1:56887」

回答

0
db.serverStatus().connections 

客戶端連接細節

db.currentOp(true) 

顯示當前操作deatils

db.currentOp(true).inprog.forEach(function(inPro){if(inPro.client && inPro.client!="0.0.0.0:0")print(inPro.client)}) 

我認爲這將解決您的問題

+0

下面是輸出,當我運行命令「RS:PRIMARY> db.currentOp(真).inprog.forEach(函數(INPRO){如果(inPro.client && INPRO .client!=「0.0.0.0:0.0」)print(inPro.client)}) 127.0.0.1:51658 127.0.0.1:43424 127.0.0.1:56887 它只顯示本地主機。它不顯示連接到它的應用程序IP地址。 – Ganu

+0

您能否介紹一下您的應用程序流程(前端服務層後端(mongodb))。我認爲你的應用程序將與服務進行通信,並且它將與數據庫進行通信,我認爲你正在本地機器上運行服務。127.0.0.1:Portno連接到數據庫,因此它顯示在結果中。如果你想要應用程序IP,你可以在服務層進行編碼。在這種情況下,這不是與MongoDB相關的問題,它將與您的服務有關 –