diff --git a/exporter/metrics.go b/exporter/metrics.go index 6cf9a2f66..3d1b16736 100644 --- a/exporter/metrics.go +++ b/exporter/metrics.go @@ -391,7 +391,7 @@ func processSlice(prefix string, v []interface{}, commonLabels map[string]string continue } - // use the replicaset or server name as a label + // use the replicaset or server name or addr as a label if name, ok := s["name"].(string); ok { labels["member_idx"] = name } @@ -401,6 +401,9 @@ func processSlice(prefix string, v []interface{}, commonLabels map[string]string if host, ok := s["host"].(string); ok { labels["member_idx"] = host } + if addr, ok := s["addr"].(string); ok { + labels["member_addr"] = addr + } metrics = append(metrics, makeMetrics(prefix, s, labels, compatibleMode)...) } diff --git a/exporter/testdata/get_diagnostic_data.json b/exporter/testdata/get_diagnostic_data.json index 39ffc990e..938fc5286 100644 --- a/exporter/testdata/get_diagnostic_data.json +++ b/exporter/testdata/get_diagnostic_data.json @@ -2133,6 +2133,65 @@ "uri": "statistics:" } }, + "connPoolStats" : { + "start" : "2025-08-04T07:10:00.002Z", + "numClientConnections" : 24, + "numAScopedConnections" : 0, + "totalInUse" : 0, + "totalAvailable" : 156, + "totalCreated" : 143694, + "totalRefreshing" : 0, + "replicaSets" : { + "shard_001" : { + "hosts" : [ + { + "addr" : "1.1.1.1:36001", + "ok" : true, + "ismaster" : true, + "hidden" : false, + "secondary" : false, + "pingTimeMillis" : 0 + }, + { + "addr" : "2.2.2.2:36001", + "ok" : true, + "ismaster" : false, + "hidden" : false, + "secondary" : true, + "pingTimeMillis" : 0 + } + ] + }, + "configsvr" : { + "hosts" : [ + { + "addr" : "3.3.3.3:27001", + "ok" : true, + "ismaster" : true, + "hidden" : false, + "secondary" : false, + "pingTimeMillis" : 0 + }, + { + "addr" : "4.4.4.4:27001", + "ok" : true, + "ismaster" : false, + "hidden" : false, + "secondary" : true, + "pingTimeMillis" : 0 + }, + { + "addr" : "5.5.5.5:27001", + "ok" : true, + "ismaster" : false, + "hidden" : false, + "secondary" : true, + "pingTimeMillis" : 0 + } + ] + } + } + }, "start": "2020-09-10T14:39:52-03:00", "systemMetrics": { "cpu": {