From c28d5ea7107427175ef3f6089aaa36c97c2919bc Mon Sep 17 00:00:00 2001 From: Sage Weil Date: Wed, 7 Dec 2016 09:50:26 -0500 Subject: [PATCH] mon/OSDMonitor: only show interesting flags in health warning Also add PAUSEREC flag into the list. Fixes: http://tracker.ceph.com/issues/18175 Signed-off-by: Sage Weil (cherry picked from commit 26220f0608f5ed4a7d97fb8d10d0d12a0fcf5583) Conflicts: src/mon/OSDMonitor.cc (hammer lacks CEPH_OSDMAP_FULL and order of flags is slightly different) --- src/mon/OSDMonitor.cc | 30 +++++++++++++++++------------- 1 file changed, 17 insertions(+), 13 deletions(-) diff --git a/src/mon/OSDMonitor.cc b/src/mon/OSDMonitor.cc index cf4749b7d72..c43474c9a12 100644 --- a/src/mon/OSDMonitor.cc +++ b/src/mon/OSDMonitor.cc @@ -2669,20 +2669,24 @@ void OSDMonitor::get_health(list >& summary, } // warn about flags - if (osdmap.test_flag(CEPH_OSDMAP_PAUSERD | - CEPH_OSDMAP_PAUSEWR | - CEPH_OSDMAP_NOUP | - CEPH_OSDMAP_NODOWN | - CEPH_OSDMAP_NOIN | - CEPH_OSDMAP_NOOUT | - CEPH_OSDMAP_NOBACKFILL | - CEPH_OSDMAP_NOREBALANCE | - CEPH_OSDMAP_NORECOVER | - CEPH_OSDMAP_NOSCRUB | - CEPH_OSDMAP_NODEEP_SCRUB | - CEPH_OSDMAP_NOTIERAGENT)) { + uint64_t warn_flags = + CEPH_OSDMAP_PAUSERD | + CEPH_OSDMAP_PAUSEWR | + CEPH_OSDMAP_PAUSEREC | + CEPH_OSDMAP_NOUP | + CEPH_OSDMAP_NODOWN | + CEPH_OSDMAP_NOIN | + CEPH_OSDMAP_NOOUT | + CEPH_OSDMAP_NOBACKFILL | + CEPH_OSDMAP_NOREBALANCE | + CEPH_OSDMAP_NORECOVER | + CEPH_OSDMAP_NOSCRUB | + CEPH_OSDMAP_NODEEP_SCRUB | + CEPH_OSDMAP_NOTIERAGENT; + if (osdmap.test_flag(warn_flags)) { ostringstream ss; - ss << osdmap.get_flag_string() << " flag(s) set"; + ss << osdmap.get_flag_string(osdmap.get_flags() & warn_flags) + << " flag(s) set"; summary.push_back(make_pair(HEALTH_WARN, ss.str())); if (detail) detail->push_back(make_pair(HEALTH_WARN, ss.str())); -- 2.47.3