diff --git a/plugins/inputs/mongodb/README.md b/plugins/inputs/mongodb/README.md index 5449e3b4b..6f9fa3995 100644 --- a/plugins/inputs/mongodb/README.md +++ b/plugins/inputs/mongodb/README.md @@ -56,6 +56,7 @@ by running Telegraf with the `--debug` argument. - tags: - hostname - node_type + - rs_name - fields: - active_reads (integer) - active_writes (integer) diff --git a/plugins/inputs/mongodb/mongodb_data.go b/plugins/inputs/mongodb/mongodb_data.go index 09bacdae1..fd085665f 100644 --- a/plugins/inputs/mongodb/mongodb_data.go +++ b/plugins/inputs/mongodb/mongodb_data.go @@ -245,6 +245,10 @@ func (d *MongodbData) AddDefaultStats() { d.addStat(statLine, DefaultLatencyStats) } + if d.StatLine.ReplSetName != "" { + d.Tags["rs_name"] = d.StatLine.ReplSetName + } + if d.StatLine.OplogStats != nil { d.add("repl_oplog_window_sec", d.StatLine.OplogStats.TimeDiff) } diff --git a/plugins/inputs/mongodb/mongodb_data_test.go b/plugins/inputs/mongodb/mongodb_data_test.go index 711b3eef2..e643d1820 100644 --- a/plugins/inputs/mongodb/mongodb_data_test.go +++ b/plugins/inputs/mongodb/mongodb_data_test.go @@ -211,12 +211,14 @@ func TestStateTag(t *testing.T) { Query: 0, NodeType: "PRI", NodeState: "PRIMARY", + ReplSetName: "rs1", }, tags, ) stateTags := make(map[string]string) stateTags["node_type"] = "PRI" + stateTags["rs_name"] = "rs1" var acc testutil.Accumulator