diff options
author | Samuel Just <sam.just@inktank.com> | 2013-07-15 16:11:08 -0700 |
---|---|---|
committer | Samuel Just <sam.just@inktank.com> | 2013-07-16 15:29:52 -0700 |
commit | d9e0e789bc854577af400b7498e95b480002ff66 (patch) | |
tree | 2dbde2fae6dc54c359b4c2b08c2a5898532f3f03 | |
parent | 62d9983bce7c837ef10e31ac99b562efb380a5ba (diff) | |
download | ceph-d9e0e789bc854577af400b7498e95b480002ff66.tar.gz |
FileStore: add a perf counter for time spent acquiring op queue throttle
Signed-off-by: Samuel Just <sam.just@inktank.com>
Reviewed-by: Sage Weil <sage@inktank.com>
-rw-r--r-- | src/os/FileStore.cc | 4 | ||||
-rw-r--r-- | src/os/ObjectStore.h | 1 |
2 files changed, 5 insertions, 0 deletions
diff --git a/src/os/FileStore.cc b/src/os/FileStore.cc index 70f182a61e0..5afeba070d8 100644 --- a/src/os/FileStore.cc +++ b/src/os/FileStore.cc @@ -467,6 +467,7 @@ FileStore::FileStore(const std::string &base, const std::string &jdev, const cha plb.add_time_avg(l_os_commit_len, "commitcycle_interval"); plb.add_time_avg(l_os_commit_lat, "commitcycle_latency"); plb.add_u64_counter(l_os_j_full, "journal_full"); + plb.add_time_avg(l_os_queue_lat, "queue_transaction_latency_avg"); logger = plb.create_perf_counters(); @@ -1954,6 +1955,7 @@ void FileStore::op_queue_reserve_throttle(Op *o) logger->set(l_os_oq_max_ops, max_ops); logger->set(l_os_oq_max_bytes, max_bytes); + utime_t start = ceph_clock_now(g_ceph_context); { Mutex::Locker l(op_throttle_lock); while ((max_ops && (op_queue_len + 1) > max_ops) || @@ -1967,6 +1969,8 @@ void FileStore::op_queue_reserve_throttle(Op *o) op_queue_len++; op_queue_bytes += o->bytes; } + utime_t end = ceph_clock_now(g_ceph_context); + logger->tinc(l_os_queue_lat, end - start); logger->set(l_os_oq_ops, op_queue_len); logger->set(l_os_oq_bytes, op_queue_bytes); diff --git a/src/os/ObjectStore.h b/src/os/ObjectStore.h index 7310d53b0ee..6bfefa09a47 100644 --- a/src/os/ObjectStore.h +++ b/src/os/ObjectStore.h @@ -67,6 +67,7 @@ enum { l_os_commit_len, l_os_commit_lat, l_os_j_full, + l_os_queue_lat, l_os_last, }; |