summaryrefslogtreecommitdiff
path: root/src/mongo/db/ftdc
diff options
context:
space:
mode:
authorLucas de Castro Borges <lucas@gnuabordo.com.br>2025-02-11 15:07:35 -0300
committerLucas de Castro Borges <lucas@gnuabordo.com.br>2025-02-11 15:07:35 -0300
commit4cb8841196d0625dfa3825aa326f071cd27c7b8b (patch)
tree1682a647d4463397c119183369ae6f750d5fdcff /src/mongo/db/ftdc
parentaa03c6362cbaa767638e6eed9b031d86dd2643d1 (diff)
parent8f0827553e09872941945a093b647a4211a9db7f (diff)
Update upstream source from tag 'upstream/6.0.0'master
Update to upstream version '6.0.0' with Debian dir 5604a80ec1c96ca76f25f40d78e6ef855abec322
Diffstat (limited to 'src/mongo/db/ftdc')
-rw-r--r--src/mongo/db/ftdc/SConscript1
-rw-r--r--src/mongo/db/ftdc/ftdc_server.cpp5
-rw-r--r--src/mongo/db/ftdc/ftdc_system_stats_linux.cpp75
3 files changed, 2 insertions, 79 deletions
diff --git a/src/mongo/db/ftdc/SConscript b/src/mongo/db/ftdc/SConscript
index 6a21cf9efdc..72a96523195 100644
--- a/src/mongo/db/ftdc/SConscript
+++ b/src/mongo/db/ftdc/SConscript
@@ -25,7 +25,6 @@ ftdcEnv.Library(
],
LIBDEPS=[
'$BUILD_DIR/mongo/base',
- '$BUILD_DIR/mongo/bson/bson_validate',
'$BUILD_DIR/mongo/bson/util/bson_extract',
'$BUILD_DIR/mongo/db/server_options_core',
'$BUILD_DIR/mongo/db/service_context',
diff --git a/src/mongo/db/ftdc/ftdc_server.cpp b/src/mongo/db/ftdc/ftdc_server.cpp
index a6c5b888d9c..c6f1da3b17c 100644
--- a/src/mongo/db/ftdc/ftdc_server.cpp
+++ b/src/mongo/db/ftdc/ftdc_server.cpp
@@ -235,10 +235,9 @@ public:
// frequent schema changes.
commandBuilder.append("transactions", BSON("includeLastCommitted" << false));
- // Exclude detailed query planning statistics and apiVersions.
+ // Exclude detailed query planning statistics.
commandBuilder.append("metrics",
- BSON("query" << BSON("multiPlanner" << BSON("histograms" << false))
- << "apiVersions" << false));
+ BSON("query" << BSON("multiPlanner" << BSON("histograms" << false))));
if (gDiagnosticDataCollectionEnableLatencyHistograms.load()) {
BSONObjBuilder subObjBuilder(commandBuilder.subobjStart("opLatencies"));
diff --git a/src/mongo/db/ftdc/ftdc_system_stats_linux.cpp b/src/mongo/db/ftdc/ftdc_system_stats_linux.cpp
index 3f13d8bc080..acb28f7bb6c 100644
--- a/src/mongo/db/ftdc/ftdc_system_stats_linux.cpp
+++ b/src/mongo/db/ftdc/ftdc_system_stats_linux.cpp
@@ -33,7 +33,6 @@
#include <memory>
#include <string>
-#include <sys/resource.h>
#include <vector>
#include "mongo/base/status.h"
@@ -41,8 +40,6 @@
#include "mongo/bson/bsonobjbuilder.h"
#include "mongo/db/ftdc/collector.h"
#include "mongo/db/ftdc/controller.h"
-#include "mongo/util/errno_util.h"
-#include "mongo/util/functional.h"
#include "mongo/util/processinfo.h"
#include "mongo/util/procparser.h"
@@ -158,22 +155,6 @@ public:
&subObjBuilder);
subObjBuilder.doneFast();
}
-
- {
- BSONObjBuilder subObjBuilder(builder.subobjStart("pressure"_sd));
- processStatusErrors(
- procparser::parseProcPressureFile("cpu", "/proc/pressure/cpu"_sd, &subObjBuilder),
- &subObjBuilder);
-
- processStatusErrors(procparser::parseProcPressureFile(
- "memory", "/proc/pressure/memory"_sd, &subObjBuilder),
- &subObjBuilder);
-
- processStatusErrors(
- procparser::parseProcPressureFile("io", "/proc/pressure/io"_sd, &subObjBuilder),
- &subObjBuilder);
- subObjBuilder.doneFast();
- }
}
private:
@@ -184,66 +165,10 @@ private:
std::vector<StringData> _disksStringData;
};
-class SimpleFunctionCollector final : public FTDCCollectorInterface {
-public:
- SimpleFunctionCollector(StringData name,
- unique_function<void(OperationContext*, BSONObjBuilder&)> collectFn)
- : _name(name.toString()), _collectFn(std::move(collectFn)) {}
-
- void collect(OperationContext* opCtx, BSONObjBuilder& builder) override {
- _collectFn(opCtx, builder);
- }
-
- std::string name() const override {
- return _name;
- }
-
-private:
- std::string _name;
- unique_function<void(OperationContext*, BSONObjBuilder&)> _collectFn;
-};
-
-
-void collectUlimit(int resource, StringData resourceName, BSONObjBuilder& builder) {
-
- struct rlimit rlim;
-
- BSONObjBuilder subObjBuilder(builder.subobjStart(resourceName));
-
- if (!getrlimit(resource, &rlim)) {
- subObjBuilder.append("soft", static_cast<int64_t>(rlim.rlim_cur));
- subObjBuilder.append("hard", static_cast<int64_t>(rlim.rlim_max));
- } else {
- auto ec = lastSystemError();
-
- subObjBuilder.append("error", errorMessage(ec));
- }
-}
-
-void collectUlimits(OperationContext*, BSONObjBuilder& builder) {
- collectUlimit(RLIMIT_CPU, "cpuTime_secs"_sd, builder);
- collectUlimit(RLIMIT_FSIZE, "fileSize_blocks"_sd, builder);
- collectUlimit(RLIMIT_DATA, "dataSegSize_kb"_sd, builder);
- collectUlimit(RLIMIT_STACK, "stackSize_kb"_sd, builder);
- collectUlimit(RLIMIT_CORE, "coreFileSize_blocks"_sd, builder);
- collectUlimit(RLIMIT_RSS, "residentSize_kb"_sd, builder);
- collectUlimit(RLIMIT_NOFILE, "fileDescriptors"_sd, builder);
- collectUlimit(RLIMIT_AS, "addressSpace_kb"_sd, builder);
- collectUlimit(RLIMIT_NPROC, "processes"_sd, builder);
- collectUlimit(RLIMIT_MEMLOCK, "memLock_kb"_sd, builder);
- collectUlimit(RLIMIT_LOCKS, "fileLocks"_sd, builder);
- collectUlimit(RLIMIT_SIGPENDING, "pendingSignals"_sd, builder);
-}
-
} // namespace
-
void installSystemMetricsCollector(FTDCController* controller) {
controller->addPeriodicCollector(std::make_unique<LinuxSystemMetricsCollector>());
-
- // Collect ULimits settings on rotation.
- controller->addOnRotateCollector(
- std::make_unique<SimpleFunctionCollector>("ulimits", collectUlimits));
}
} // namespace mongo