Mongodb

如何列出輔助節點中的連接

  • September 18, 2019

在我的 Atlas 集群中,輔助節點中有很多連接。如何列出此連接?

執行此命令時,列出主節點中的目前連接。

db.currentOp(true).inprog.reduce(
 (accumulator, connection) => {
   ipaddress = connection.client ? connection.client.split(":")[0] : "unknown";
   accumulator[ipaddress] = (accumulator[ipaddress] || 0) + 1;
   accumulator["TOTAL_CONNECTION_COUNT"]++;
   return accumulator;
 },
 { TOTAL_CONNECTION_COUNT: 0 }
)


{
   "TOTAL_CONNECTION_COUNT" : 229,
}

但是,我在副本集中有 700 個連接。Atlas 伺服器中的連接

謝謝

  1. 轉到命令行工具

在此處輸入圖像描述

  1. 設置診斷部分下的複制mongostat命令

在此處輸入圖像描述

  1. 更新密碼並在最後添加--discover選項
  2. 在任何命令行工具中執行它
  3. 您應該能夠看到所有主要和次要的連接數如下 在此處輸入圖像描述

作為 mongo shell,這將列印client IP:port,以及connection ID

db.currentOp(true).inprog.forEach(function(d){if(d.client)print(d.client, d.connectionId)})

注意:傳入truetodb.currentOp()相當於傳入一個{ "$all": true }. 以下操作是等效的:

db.currentOp(true)
db.currentOp( { "$all": true } )

更多參考hereherehere

引用自:https://dba.stackexchange.com/questions/248900