From 4a454bbdd7882086b2744d111ec8381fb2b31224 Mon Sep 17 00:00:00 2001 From: Neha Ojha Date: Thu, 3 Dec 2020 19:24:39 +0000 Subject: [PATCH] mon: don't log "config set" and "config-key set" dispatch and finished messages Signed-off-by: Neha Ojha (cherry picked from commit 4b83dfb1f74e8a59c802ff3c0eb4595f7e763762) Conflicts: src/mon/Monitor.h - replace one instance of "std::ostringstream ds;" with "stringstream ds;" --- src/mon/Monitor.cc | 18 ++++++++++-------- src/mon/Monitor.h | 9 ++++++++- 2 files changed, 18 insertions(+), 9 deletions(-) diff --git a/src/mon/Monitor.cc b/src/mon/Monitor.cc index cbde87cc614d..f1e4c257db47 100644 --- a/src/mon/Monitor.cc +++ b/src/mon/Monitor.cc @@ -3336,18 +3336,20 @@ void Monitor::handle_command(MonOpRequestRef op) if (!_allowed_command(session, service, prefix, cmdmap, param_str_map, mon_cmd)) { dout(1) << __func__ << " access denied" << dendl; - (cmd_is_rw ? audit_clog->info() : audit_clog->debug()) - << "from='" << session->name << " " << session->addrs << "' " - << "entity='" << session->entity_name << "' " - << "cmd=" << m->cmd << ": access denied"; + if (prefix != "config set" && prefix != "config-key set") + (cmd_is_rw ? audit_clog->info() : audit_clog->debug()) + << "from='" << session->name << " " << session->addrs << "' " + << "entity='" << session->entity_name << "' " + << "cmd=" << m->cmd << ": access denied"; reply_command(op, -EACCES, "access denied", 0); return; } - (cmd_is_rw ? audit_clog->info() : audit_clog->debug()) - << "from='" << session->name << " " << session->addrs << "' " - << "entity='" << session->entity_name << "' " - << "cmd=" << m->cmd << ": dispatch"; + if (prefix != "config set" && prefix != "config-key set") + (cmd_is_rw ? audit_clog->info() : audit_clog->debug()) + << "from='" << session->name << " " << session->addrs << "' " + << "entity='" << session->entity_name << "' " + << "cmd=" << m->cmd << ": dispatch"; // compat kludge for legacy clients trying to tell commands that are // new. see bottom of MonCommands.h. we need to handle both (1) diff --git a/src/mon/Monitor.h b/src/mon/Monitor.h index fd8b14883624..29c3a13be60d 100644 --- a/src/mon/Monitor.h +++ b/src/mon/Monitor.h @@ -41,6 +41,7 @@ #include "MonCommand.h" +#include "common/cmdparse.h" #include "common/config_obs.h" #include "common/LogClient.h" #include "auth/AuthClient.h" @@ -839,7 +840,13 @@ public: ss << "session dropped for command "; } } - ss << "cmd='" << m->cmd << "': finished"; + cmdmap_t cmdmap; + stringstream ds; + string prefix; + ceph::common::cmdmap_from_json(m->cmd, &cmdmap, ds); + ceph::common::cmd_getval(cmdmap, "prefix", prefix); + if (prefix != "config set" && prefix != "config-key set") + ss << "cmd='" << m->cmd << "': finished"; mon->audit_clog->info() << ss.str(); mon->reply_command(op, rc, rs, rdata, version); -- 2.47.3