You are viewing a plain text version of this content. The canonical link for it is here.
Posted to reviews@kudu.apache.org by "Alexey Serbin (Code Review)" <ge...@cloudera.org> on 2026/04/15 22:58:43 UTC

[kudu-CR] [rpc] add read/write event handling latency histograms

Hello Kurt Deschler, Kudu Jenkins, Abhishek Chennaka, Joe McDonnell, Csaba Ringhofer, Michael Smith, 

I'd like you to reexamine a change. Please visit

    http://gerrit.cloudera.org:8080/24181

to look at the new patch set (#2).

Change subject: [rpc] add read/write event handling latency histograms
......................................................................

[rpc] add read/write event handling latency histograms

This changelist adds metrics for tracking latencies of registered read
and write handlers invoked by the libev's I/O event loop mechanism.
The idea is to be able to tell how much time it took a registered
handler to start reading/writing pending data since the beginning
of a loop prompted by corresponding I/O events.

Two pairs of histograms have been added:

  * Histograms of read/write handler latencies for currently active RPC
    connections.  Each of the histograms is updated when a register
    handler is invoked on a reactor thread in the libev's event loop.
    These per-connection histograms are available as a part of the JSON
    output at the /rpcz endpoint of the embedded webserver.

  * Histograms of maximum read/write latencies among all RPC connections
    that have already been closed.  Each of the histograms is updated
    with connection's lifetime maximum read/write handler latency
    upon shutting down the connection.  These histograms are available
    as server-level metrics that can be fetched from the /metrics and
    the /metrics_prometheus endpoint of the embedded webserver.  These
    are named 'reactor_ev_loop_max_read_latency_us' and
    'reactor_ev_loop_max_write_latency_us' correspondingly.

Change-Id: I8f7208d1adfe95bc9e909f7db04221dbb15ea552
---
M src/kudu/rpc/CMakeLists.txt
M src/kudu/rpc/connection.cc
M src/kudu/rpc/connection.h
M src/kudu/rpc/mt-rpc-test.cc
M src/kudu/rpc/reactor.cc
M src/kudu/rpc/reactor.h
M src/kudu/rpc/rpc_introspection.proto
M src/kudu/rpc/rpc_stub-test.cc
M src/kudu/util/metrics.cc
M src/kudu/util/metrics.h
10 files changed, 288 insertions(+), 25 deletions(-)


  git pull ssh://gerrit.cloudera.org:29418/kudu refs/changes/81/24181/2
-- 
To view, visit http://gerrit.cloudera.org:8080/24181
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I8f7208d1adfe95bc9e909f7db04221dbb15ea552
Gerrit-Change-Number: 24181
Gerrit-PatchSet: 2
Gerrit-Owner: Alexey Serbin <al...@apache.org>
Gerrit-Reviewer: Abhishek Chennaka <ac...@cloudera.com>
Gerrit-Reviewer: Csaba Ringhofer <cs...@cloudera.com>
Gerrit-Reviewer: Joe McDonnell <jo...@cloudera.com>
Gerrit-Reviewer: Kudu Jenkins (120)
Gerrit-Reviewer: Kurt Deschler <kd...@cloudera.com>
Gerrit-Reviewer: Michael Smith <mi...@cloudera.com>