dout more latency info for each seq in filestore, this is useful for
tracking io request.
Signed-off-by: Xinze Chi <xmdxcxz@gmail.com>
list<Context*> to_queue;
Op *o = osr->dequeue(&to_queue);
- dout(10) << "_finish_op " << o << " seq " << o->op << " " << *osr << "/" << osr->parent << dendl;
+ utime_t lat = ceph_clock_now(g_ceph_context);
+ lat -= o->start;
+
+ dout(10) << "_finish_op " << o << " seq " << o->op << " " << *osr << "/" << osr->parent << " lat " << lat << dendl;
osr->apply_lock.Unlock(); // locked in _do_op
// called with tp lock held
op_queue_release_throttle(o);
- utime_t lat = ceph_clock_now(g_ceph_context);
- lat -= o->start;
logger->tinc(l_os_apply_lat, lat);
if (o->onreadable_sync) {
list<Context*> to_queue;
Op *o = osr->dequeue(&to_queue);
- dout(10) << "_finish_op " << o << " seq " << o->op << " " << *osr << "/" << osr->parent << dendl;
+ utime_t lat = ceph_clock_now(g_ceph_context);
+ lat -= o->start;
+
+ dout(10) << "_finish_op " << o << " seq " << o->op << " " << *osr << "/" << osr->parent << " lat " << lat << dendl;
osr->apply_lock.Unlock(); // locked in _do_op
op_queue_release_throttle(o);
- utime_t lat = ceph_clock_now(g_ceph_context);
- lat -= o->start;
perf_logger->tinc(l_os_commit_lat, lat);
perf_logger->tinc(l_os_apply_lat, lat);