summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMoustafa Maher <m.maher@mongodb.com>2023-04-06 12:48:53 +0000
committerEvergreen Agent <no-reply@evergreen.mongodb.com>2023-04-06 22:37:44 +0000
commit3e3051fb5ce7dd2ae529b02275877365ca409960 (patch)
tree7917ea0cb9143a519e6cbc395b6dbd11759b446a
parent21401a73933abc3ec70d04ac3e613e9b4ccccd1d (diff)
downloadmongo-3e3051fb5ce7dd2ae529b02275877365ca409960.tar.gz
SERVER-75601 Omit ApiVersions from FTDC data.
(cherry picked from commit 3d9adf5f5924d16ce15fa9848800b6f6263c465b)
-rw-r--r--jstests/libs/ftdc.js8
-rw-r--r--src/mongo/db/ftdc/ftdc_server.cpp5
2 files changed, 11 insertions, 2 deletions
diff --git a/jstests/libs/ftdc.js b/jstests/libs/ftdc.js
index f8fa59bf096..dbf20495a81 100644
--- a/jstests/libs/ftdc.js
+++ b/jstests/libs/ftdc.js
@@ -40,6 +40,14 @@ function verifyGetDiagnosticData(adminDb) {
assert(data.hasOwnProperty("serverStatus"),
"does not have 'serverStatus' in '" + tojson(data) + "'");
assert(data.hasOwnProperty("end"), "does not have 'end' in '" + tojson(data) + "'");
+
+ // 'apiVersions' section is omitted from serverStatus metrics.
+ assert(data["serverStatus"].hasOwnProperty("metrics"),
+ "does not have 'serverStatus.metrics' in '" + tojson(data) + "'");
+ assert(!data["serverStatus"]["metrics"].hasOwnProperty("apiVersions"),
+ "'serverStatus.metrics.apiVersions' should be omitted from FTDC data: '" +
+ tojson(data) + "'");
+
foundGoodDocument = true;
jsTestLog("Got good getDiagnosticData: " + tojson(result));
diff --git a/src/mongo/db/ftdc/ftdc_server.cpp b/src/mongo/db/ftdc/ftdc_server.cpp
index c6f1da3b17c..a6c5b888d9c 100644
--- a/src/mongo/db/ftdc/ftdc_server.cpp
+++ b/src/mongo/db/ftdc/ftdc_server.cpp
@@ -235,9 +235,10 @@ public:
// frequent schema changes.
commandBuilder.append("transactions", BSON("includeLastCommitted" << false));
- // Exclude detailed query planning statistics.
+ // Exclude detailed query planning statistics and apiVersions.
commandBuilder.append("metrics",
- BSON("query" << BSON("multiPlanner" << BSON("histograms" << false))));
+ BSON("query" << BSON("multiPlanner" << BSON("histograms" << false))
+ << "apiVersions" << false));
if (gDiagnosticDataCollectionEnableLatencyHistograms.load()) {
BSONObjBuilder subObjBuilder(commandBuilder.subobjStart("opLatencies"));