From 5fd6b024a646605c52cbdd850da166158e0f4b5e Mon Sep 17 00:00:00 2001 From: Sage Weil Date: Sun, 10 Mar 2019 16:39:51 -0500 Subject: [PATCH] os/bluestore: make bluefs spillover messages nicer Was osd:50 spilled over to slow device: 1.3 GiB Now osd.0 spilled over 1.7 GiB metadata from 'db' device (1000 MiB used of 1024 MiB) to slow device Signed-off-by: Sage Weil --- src/mon/PGMap.cc | 2 +- src/os/bluestore/BlueStore.cc | 9 ++++++--- src/os/bluestore/BlueStore.h | 2 +- 3 files changed, 8 insertions(+), 5 deletions(-) diff --git a/src/mon/PGMap.cc b/src/mon/PGMap.cc index c40a6b32a8d..9967cad8623 100644 --- a/src/mon/PGMap.cc +++ b/src/mon/PGMap.cc @@ -2966,7 +2966,7 @@ void PGMap::get_health_checks( for (auto& a : osd_sum.os_alerts) { int left = max; - string s0 = " osd:"; + string s0 = " osd."; s0 += stringify(a.first); for (auto& aa : a.second) { string s(s0); diff --git a/src/os/bluestore/BlueStore.cc b/src/os/bluestore/BlueStore.cc index a01e41fc202..114927a951a 100644 --- a/src/os/bluestore/BlueStore.cc +++ b/src/os/bluestore/BlueStore.cc @@ -5655,9 +5655,12 @@ int BlueStore::_balance_bluefs_freespace() if (bluefs_shared_bdev == BlueFS::BDEV_SLOW) { auto& p = bluefs_usage[bluefs_shared_bdev]; if (p.first != p.second) { - string s("spilled over to slow device: "); - s += stringify(byte_u_t(p.second - p.first)); - _set_spillover_alert(s.c_str()); + auto& db = bluefs_usage[BlueFS::BDEV_DB]; + ostringstream ss; + ss << "spilled over " << byte_u_t(p.second - p.first) + << " metadata from 'db' device (" << byte_u_t(db.second - db.first) + << " used of " << byte_u_t(db.second) << ") to slow device"; + _set_spillover_alert(ss.str()); clear_alert = false; } } diff --git a/src/os/bluestore/BlueStore.h b/src/os/bluestore/BlueStore.h index 7dbe29706b2..f734a4550fd 100644 --- a/src/os/bluestore/BlueStore.h +++ b/src/os/bluestore/BlueStore.h @@ -2711,7 +2711,7 @@ private: failed_cmode.clear(); } - void _set_spillover_alert(const char* s) { + void _set_spillover_alert(const string& s) { std::lock_guard l(qlock); spillover_alert = s; } -- 2.39.5