summaryrefslogtreecommitdiff
path: root/src/mongo/db/introspect.cpp
diff options
context:
space:
mode:
authorMark Benvenuto <mark.benvenuto@mongodb.com>2016-08-04 17:29:34 -0400
committerMark Benvenuto <mark.benvenuto@mongodb.com>2016-08-04 17:29:34 -0400
commit66391a21a0a1482f54c29b759bacf88c806c490f (patch)
tree7f639ae8e3e25c6280b6c5a168b64a7bd66656bb /src/mongo/db/introspect.cpp
parentad27c92e01758c96e7ace4cba13574e0d97a761d (diff)
downloadmongo-66391a21a0a1482f54c29b759bacf88c806c490f.tar.gz
SERVER-24614 Add Client Metadata's appname to system.profile
Diffstat (limited to 'src/mongo/db/introspect.cpp')
-rw-r--r--src/mongo/db/introspect.cpp11
1 files changed, 11 insertions, 0 deletions
diff --git a/src/mongo/db/introspect.cpp b/src/mongo/db/introspect.cpp
index 55ae0dba84d..3bc23d3fa93 100644
--- a/src/mongo/db/introspect.cpp
+++ b/src/mongo/db/introspect.cpp
@@ -41,6 +41,8 @@
#include "mongo/db/curop.h"
#include "mongo/db/db_raii.h"
#include "mongo/db/jsobj.h"
+#include "mongo/rpc/metadata/client_metadata.h"
+#include "mongo/rpc/metadata/client_metadata_ismaster.h"
#include "mongo/util/log.h"
#include "mongo/util/scopeguard.h"
@@ -95,6 +97,15 @@ void profile(OperationContext* txn, NetworkOp op) {
b.appendDate("ts", jsTime());
b.append("client", txn->getClient()->clientAddress());
+ const auto& clientMetadata =
+ ClientMetadataIsMasterState::get(txn->getClient()).getClientMetadata();
+ if (clientMetadata) {
+ auto appName = clientMetadata.get().getApplicationName();
+ if (!appName.empty()) {
+ b.append("appName", appName);
+ }
+ }
+
AuthorizationSession* authSession = AuthorizationSession::get(txn->getClient());
_appendUserInfo(*CurOp::get(txn), b, authSession);