string spacing(maxlen - 3, ' ');
const auto quorum_names = get_quorum_names();
const auto mon_count = monmap->mon_info.size();
+ auto mnow = ceph::mono_clock::now();
ss << " mon: " << spacing << mon_count << " daemons, quorum "
- << quorum_names << " (age " << quorum_age() << ")";
+ << quorum_names << " (age " << timespan_str(mnow - quorum_since) << ")";
if (quorum_names.size() != mon_count) {
std::list<std::string> out_of_q;
for (size_t i = 0; i < monmap->ranks.size(); ++i) {
std::vector<DaemonHealthMetric> get_health_metrics();
int quorum_age() const {
- auto age = ceph::mono_clock::now() - quorum_since;
+ auto age = std::chrono::duration_cast<std::chrono::seconds>(
+ ceph::mono_clock::now() - quorum_since);
return age.count();
}