} else {
*out << " pools: " << pg_pool_sum.size() << " pools, "
<< num_pg << " pgs\n";
- *out << " objects: " << si_t(pg_sum.stats.sum.num_objects) << " objects, "
- << prettybyte_t(pg_sum.stats.sum.num_bytes) << "\n";
+ *out << " objects: " << si_u_t(pg_sum.stats.sum.num_objects) << " objects, "
+ << byte_u_t(pg_sum.stats.sum.num_bytes) << "\n";
*out << " usage: "
- << kb_t(osd_sum.kb_used) << " used, "
- << kb_t(osd_sum.kb_avail) << " / "
- << kb_t(osd_sum.kb) << " avail\n";
+ << byte_u_t(osd_sum.kb_used << 10) << " used, "
+ << byte_u_t(osd_sum.kb_avail << 10) << " / "
+ << byte_u_t(osd_sum.kb << 10) << " avail\n";
*out << " pgs: ";
}
if (out)
*out << num_pg << " pgs: "
<< states << "; "
- << prettybyte_t(pg_sum.stats.sum.num_bytes) << " data, "
- << kb_t(osd_sum.kb_used) << " used, "
- << kb_t(osd_sum.kb_avail) << " / "
- << kb_t(osd_sum.kb) << " avail";
+ << byte_u_t(pg_sum.stats.sum.num_bytes) << " data, "
+ << byte_u_t(osd_sum.kb_used << 10) << " used, "
+ << byte_u_t(osd_sum.kb_avail << 10) << " / "
+ << byte_u_t(osd_sum.kb << 10) << " avail";
if (f) {
f->dump_unsigned("num_pgs", num_pg);
f->dump_unsigned("num_bytes", pg_sum.stats.sum.num_bytes);
if (pos_delta.stats.sum.num_rd) {
int64_t rd = (pos_delta.stats.sum.num_rd_kb << 10) / (double)stamp_delta;
if (out)
- *out << pretty_si_t(rd) << "B/s rd, ";
+ *out << byte_u_t(rd) << "/s rd, ";
if (f)
f->dump_unsigned("read_bytes_sec", rd);
}
if (pos_delta.stats.sum.num_wr) {
int64_t wr = (pos_delta.stats.sum.num_wr_kb << 10) / (double)stamp_delta;
if (out)
- *out << pretty_si_t(wr) << "B/s wr, ";
+ *out << byte_u_t(wr) << "/s wr, ";
if (f)
f->dump_unsigned("write_bytes_sec", wr);
}
int64_t iops = (pos_delta.stats.sum.num_rd + pos_delta.stats.sum.num_wr) / (double)stamp_delta;
if (out)
- *out << pretty_si_t(iops) << "op/s";
+ *out << si_u_t(iops) << "op/s";
if (f)
f->dump_unsigned("io_sec", iops);
}
f->dump_int("num_bytes_recovered", pos_delta.stats.sum.num_bytes_recovered);
f->dump_int("num_keys_recovered", pos_delta.stats.sum.num_keys_recovered);
} else {
- *out << pretty_si_t(bps) << "B/s";
+ *out << byte_u_t(bps) << "/s";
if (pos_delta.stats.sum.num_keys_recovered)
- *out << ", " << pretty_si_t(kps) << "keys/s";
- *out << ", " << pretty_si_t(objps) << "objects/s";
+ *out << ", " << si_u_t(kps) << "keys/s";
+ *out << ", " << si_u_t(objps) << "objects/s";
}
}
}
if (f) {
f->dump_int("read_bytes_sec", rd);
} else {
- *out << pretty_si_t(rd) << "B/s rd, ";
+ *out << byte_u_t(rd) << "/s rd, ";
}
}
if (pos_delta.stats.sum.num_wr) {
if (f) {
f->dump_int("write_bytes_sec", wr);
} else {
- *out << pretty_si_t(wr) << "B/s wr, ";
+ *out << byte_u_t(wr) << "/s wr, ";
}
}
int64_t iops_rd = pos_delta.stats.sum.num_rd / (double)delta_stamp;
f->dump_int("read_op_per_sec", iops_rd);
f->dump_int("write_op_per_sec", iops_wr);
} else {
- *out << pretty_si_t(iops_rd) << "op/s rd, " << pretty_si_t(iops_wr) << "op/s wr";
+ *out << si_u_t(iops_rd) << "op/s rd, " << si_u_t(iops_wr) << "op/s wr";
}
}
}
if (f) {
f->dump_int("flush_bytes_sec", flush);
} else {
- *out << pretty_si_t(flush) << "B/s flush";
+ *out << byte_u_t(flush) << "/s flush";
have_output = true;
}
}
} else {
if (have_output)
*out << ", ";
- *out << pretty_si_t(evict) << "B/s evict";
+ *out << byte_u_t(evict) << "/s evict";
have_output = true;
}
}
} else {
if (have_output)
*out << ", ";
- *out << pretty_si_t(promote) << "op/s promote";
+ *out << si_u_t(promote) << "op/s promote";
have_output = true;
}
}
} else {
if (have_output)
*out << ", ";
- *out << pretty_si_t(pos_delta.stats.sum.num_flush_mode_low) << "PG(s) flushing";
+ *out << si_u_t(pos_delta.stats.sum.num_flush_mode_low) << "PG(s) flushing";
have_output = true;
}
}
} else {
if (have_output)
*out << ", ";
- *out << pretty_si_t(pos_delta.stats.sum.num_flush_mode_high) << "PG(s) flushing (high)";
+ *out << si_u_t(pos_delta.stats.sum.num_flush_mode_high) << "PG(s) flushing (high)";
have_output = true;
}
}
} else {
if (have_output)
*out << ", ";
- *out << pretty_si_t(pos_delta.stats.sum.num_evict_mode_some) << "PG(s) evicting";
+ *out << si_u_t(pos_delta.stats.sum.num_evict_mode_some) << "PG(s) evicting";
have_output = true;
}
}
} else {
if (have_output)
*out << ", ";
- *out << pretty_si_t(pos_delta.stats.sum.num_evict_mode_full) << "PG(s) evicting (full)";
+ *out << si_u_t(pos_delta.stats.sum.num_evict_mode_full) << "PG(s) evicting (full)";
}
}
}
if (pool->quota_max_objects == 0)
tbl << "N/A";
else
- tbl << si_t(pool->quota_max_objects);
+ tbl << si_u_t(pool->quota_max_objects);
if (pool->quota_max_bytes == 0)
tbl << "N/A";
else
- tbl << si_t(pool->quota_max_bytes);
+ tbl << byte_u_t(pool->quota_max_bytes);
}
}
if (verbose) {
tbl.define_column("OBJECTS", TextTable::LEFT, TextTable::RIGHT);
}
- tbl << stringify(si_t(osd_sum.kb*1024))
- << stringify(si_t(osd_sum.kb_avail*1024))
- << stringify(si_t(osd_sum.kb_used*1024));
+ tbl << stringify(byte_u_t(osd_sum.kb*1024))
+ << stringify(byte_u_t(osd_sum.kb_avail*1024))
+ << stringify(byte_u_t(osd_sum.kb_used*1024));
float used = 0.0;
if (osd_sum.kb > 0) {
used = ((float)osd_sum.kb_used / osd_sum.kb);
}
tbl << percentify(used*100);
if (verbose) {
- tbl << stringify(si_t(pg_sum.stats.sum.num_objects));
+ tbl << stringify(si_u_t(pg_sum.stats.sum.num_objects));
}
tbl << TextTable::endrow;
f->dump_int("raw_bytes_used", sum.num_bytes * raw_used_rate * curr_object_copies_rate);
}
} else {
- tbl << stringify(si_t(sum.num_bytes));
+ tbl << stringify(byte_u_t(sum.num_bytes));
tbl << percentify(used*100);
- tbl << si_t(avail / raw_used_rate);
+ tbl << byte_u_t(avail / raw_used_rate);
tbl << sum.num_objects;
if (verbose) {
- tbl << stringify(si_t(sum.num_objects_dirty))
- << stringify(si_t(sum.num_rd))
- << stringify(si_t(sum.num_wr))
- << stringify(si_t(sum.num_bytes * raw_used_rate * curr_object_copies_rate));
+ tbl << stringify(si_u_t(sum.num_objects_dirty))
+ << stringify(byte_u_t(sum.num_rd))
+ << stringify(byte_u_t(sum.num_wr))
+ << stringify(byte_u_t(sum.num_bytes * raw_used_rate * curr_object_copies_rate));
}
}
}
p != osd_stat.end();
++p) {
tab << p->first
- << si_t(p->second.kb_used << 10)
- << si_t(p->second.kb_avail << 10)
- << si_t(p->second.kb << 10)
+ << byte_u_t(p->second.kb_used << 10)
+ << byte_u_t(p->second.kb_avail << 10)
+ << byte_u_t(p->second.kb << 10)
<< p->second.hb_peers
<< get_num_pg_by_osd(p->first)
<< get_num_primary_pg_by_osd(p->first)
}
tab << "sum"
- << si_t(osd_sum.kb_used << 10)
- << si_t(osd_sum.kb_avail << 10)
- << si_t(osd_sum.kb << 10)
+ << byte_u_t(osd_sum.kb_used << 10)
+ << byte_u_t(osd_sum.kb_avail << 10)
+ << byte_u_t(osd_sum.kb << 10)
<< TextTable::endrow;
ss << tab;
tab.define_column("TOTAL", TextTable::LEFT, TextTable::RIGHT);
tab << "sum"
- << si_t(osd_sum.kb_used << 10)
- << si_t(osd_sum.kb_avail << 10)
- << si_t(osd_sum.kb << 10)
+ << byte_u_t(osd_sum.kb_used << 10)
+ << byte_u_t(osd_sum.kb_avail << 10)
+ << byte_u_t(osd_sum.kb << 10)
<< TextTable::endrow;
ss << tab;
p.second.target_max_objects * (ratio / 1000000.0)) {
ostringstream ss;
ss << "cache pool '" << name << "' with "
- << si_t(st.stats.sum.num_objects)
+ << si_u_t(st.stats.sum.num_objects)
<< " objects at/near target max "
- << si_t(p.second.target_max_objects) << " objects";
+ << si_u_t(p.second.target_max_objects) << " objects";
detail.push_back(ss.str());
nearfull = true;
}
p.second.target_max_bytes * (ratio / 1000000.0)) {
ostringstream ss;
ss << "cache pool '" << name
- << "' with " << si_t(st.stats.sum.num_bytes)
- << "B at/near target max "
- << si_t(p.second.target_max_bytes) << "B";
+ << "' with " << byte_u_t(st.stats.sum.num_bytes)
+ << " at/near target max "
+ << byte_u_t(p.second.target_max_bytes);
detail.push_back(ss.str());
nearfull = true;
}
} else if (crit_threshold > 0 &&
sum.num_bytes >= pool.quota_max_bytes*crit_threshold) {
ss << "pool '" << pool_name
- << "' has " << si_t(sum.num_bytes) << " bytes"
- << " (max " << si_t(pool.quota_max_bytes) << ")";
+ << "' has " << byte_u_t(sum.num_bytes)
+ << " (max " << byte_u_t(pool.quota_max_bytes) << ")";
full_detail.push_back(ss.str());
full = true;
} else if (warn_threshold > 0 &&
sum.num_bytes >= pool.quota_max_bytes*warn_threshold) {
ss << "pool '" << pool_name
- << "' has " << si_t(sum.num_bytes) << " bytes"
- << " (max " << si_t(pool.quota_max_bytes) << ")";
+ << "' has " << byte_u_t(sum.num_bytes)
+ << " (max " << byte_u_t(pool.quota_max_bytes) << ")";
nearfull_detail.push_back(ss.str());
nearfull = true;
}
if (detail) {
ostringstream ss;
ss << "cache pool '" << name << "' with "
- << si_t(st.stats.sum.num_objects)
+ << si_u_t(st.stats.sum.num_objects)
<< " objects at/near target max "
- << si_t(p->second.target_max_objects) << " objects";
+ << si_u_t(p->second.target_max_objects) << " objects";
detail->push_back(make_pair(HEALTH_WARN, ss.str()));
}
}
if (detail) {
ostringstream ss;
ss << "cache pool '" << name
- << "' with " << si_t(st.stats.sum.num_bytes)
+ << "' with " << byte_u_t(st.stats.sum.num_bytes)
<< "B at/near target max "
- << si_t(p->second.target_max_bytes) << "B";
+ << byte_u_t(p->second.target_max_bytes) << "B";
detail->push_back(make_pair(HEALTH_WARN, ss.str()));
}
}
} else if (crit_threshold > 0 &&
sum.num_bytes >= pool.quota_max_bytes*crit_threshold) {
ss << "pool '" << pool_name
- << "' has " << si_t(sum.num_bytes) << " bytes"
- << " (max " << si_t(pool.quota_max_bytes) << ")";
+ << "' has " << byte_u_t(sum.num_bytes) << " bytes"
+ << " (max " << byte_u_t(pool.quota_max_bytes) << ")";
status = HEALTH_ERR;
} else if (warn_threshold > 0 &&
sum.num_bytes >= pool.quota_max_bytes*warn_threshold) {
ss << "pool '" << pool_name
- << "' has " << si_t(sum.num_bytes) << " bytes"
- << " (max " << si_t(pool.quota_max_bytes) << ")";
+ << "' has " << byte_u_t(sum.num_bytes) << " bytes"
+ << " (max " << byte_u_t(pool.quota_max_bytes) << ")";
status = HEALTH_WARN;
}
if (status != HEALTH_OK) {