summaryrefslogtreecommitdiff
path: root/src/mongo/db/curop.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/mongo/db/curop.cpp')
-rw-r--r--src/mongo/db/curop.cpp44
1 files changed, 32 insertions, 12 deletions
diff --git a/src/mongo/db/curop.cpp b/src/mongo/db/curop.cpp
index b9e7ce060fe..24442c70f6d 100644
--- a/src/mongo/db/curop.cpp
+++ b/src/mongo/db/curop.cpp
@@ -881,14 +881,21 @@ void OpDebug::report(OperationContext* opCtx,
pAttrs->add("locks", locks.obj());
}
- auto userCacheAcquisitionStats = curop.getReadOnlyUserCacheAcquisitionStats();
- if (userCacheAcquisitionStats->shouldReport()) {
+ auto userAcquisitionStats = curop.getReadOnlyUserAcquisitionStats();
+ if (userAcquisitionStats->shouldUserCacheAcquisitionStatsReport()) {
BSONObjBuilder userCacheAcquisitionStatsBuilder;
- userCacheAcquisitionStats->report(&userCacheAcquisitionStatsBuilder,
- opCtx->getServiceContext()->getTickSource());
+ userAcquisitionStats->userCacheAcquisitionStatsReport(
+ &userCacheAcquisitionStatsBuilder, opCtx->getServiceContext()->getTickSource());
pAttrs->add("authorization", userCacheAcquisitionStatsBuilder.obj());
}
+ if (userAcquisitionStats->shouldLDAPOperationStatsReport()) {
+ BSONObjBuilder ldapOperationStatsBuilder;
+ userAcquisitionStats->ldapOperationStatsReport(&ldapOperationStatsBuilder,
+ opCtx->getServiceContext()->getTickSource());
+ pAttrs->add("LDAPOperations", ldapOperationStatsBuilder.obj());
+ }
+
BSONObj flowControlObj = makeFlowControlObject(flowControlStats);
if (flowControlObj.nFields() > 0) {
pAttrs->add("flowControl", flowControlObj);
@@ -1018,11 +1025,17 @@ void OpDebug::append(OperationContext* opCtx,
}
{
- auto userCacheAcquisitionStats = curop.getReadOnlyUserCacheAcquisitionStats();
- if (userCacheAcquisitionStats->shouldReport()) {
+ auto userAcquisitionStats = curop.getReadOnlyUserAcquisitionStats();
+ if (userAcquisitionStats->shouldUserCacheAcquisitionStatsReport()) {
BSONObjBuilder userCacheAcquisitionStatsBuilder(b.subobjStart("authorization"));
- userCacheAcquisitionStats->report(&userCacheAcquisitionStatsBuilder,
- opCtx->getServiceContext()->getTickSource());
+ userAcquisitionStats->userCacheAcquisitionStatsReport(
+ &userCacheAcquisitionStatsBuilder, opCtx->getServiceContext()->getTickSource());
+ }
+
+ if (userAcquisitionStats->shouldLDAPOperationStatsReport()) {
+ BSONObjBuilder ldapOperationStatsBuilder;
+ userAcquisitionStats->ldapOperationStatsReport(
+ &ldapOperationStatsBuilder, opCtx->getServiceContext()->getTickSource());
}
}
@@ -1285,11 +1298,18 @@ std::function<BSONObj(ProfileFilter::Args)> OpDebug::appendStaged(StringSet requ
});
addIfNeeded("authorization", [](auto field, auto args, auto& b) {
- auto userCacheAcquisitionStats = args.curop.getReadOnlyUserCacheAcquisitionStats();
- if (userCacheAcquisitionStats->shouldReport()) {
+ auto userAcquisitionStats = args.curop.getReadOnlyUserAcquisitionStats();
+ if (userAcquisitionStats->shouldUserCacheAcquisitionStatsReport()) {
BSONObjBuilder userCacheAcquisitionStatsBuilder(b.subobjStart(field));
- userCacheAcquisitionStats->report(&userCacheAcquisitionStatsBuilder,
- args.opCtx->getServiceContext()->getTickSource());
+ userAcquisitionStats->userCacheAcquisitionStatsReport(
+ &userCacheAcquisitionStatsBuilder,
+ args.opCtx->getServiceContext()->getTickSource());
+ }
+
+ if (userAcquisitionStats->shouldLDAPOperationStatsReport()) {
+ BSONObjBuilder ldapOperationStatsBuilder(b.subobjStart(field));
+ userAcquisitionStats->ldapOperationStatsReport(
+ &ldapOperationStatsBuilder, args.opCtx->getServiceContext()->getTickSource());
}
});