From: Aki Tuomi Date: Mon, 27 Mar 2017 16:50:53 +0000 (+0300) Subject: driver-cassandra: Add metric for slow queries X-Git-Tag: 2.2.29.rc1~64 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=d2cda64e7ab14ba1eb216315b16557c6905927fd;p=thirdparty%2Fdovecot%2Fcore.git driver-cassandra: Add metric for slow queries --- diff --git a/src/lib-sql/driver-cassandra.c b/src/lib-sql/driver-cassandra.c index defa7fecd5..7ea57aa5f1 100644 --- a/src/lib-sql/driver-cassandra.c +++ b/src/lib-sql/driver-cassandra.c @@ -38,6 +38,7 @@ enum cassandra_counter_type { CASSANDRA_COUNTER_TYPE_QUERY_RECV_ERR_SERVER_TIMEOUT, CASSANDRA_COUNTER_TYPE_QUERY_RECV_ERR_SERVER_UNAVAILABLE, CASSANDRA_COUNTER_TYPE_QUERY_RECV_ERR_OTHER, + CASSANDRA_COUNTER_TYPE_QUERY_SLOW, CASSANDRA_COUNTER_COUNT }; @@ -50,6 +51,7 @@ static const char *counter_names[CASSANDRA_COUNTER_COUNT] = { "recv_err_server_timeout", "recv_err_server_unavailable", "recv_err_other", + "slow", }; enum cassandra_query_type { @@ -717,9 +719,10 @@ static void driver_cassandra_result_free(struct sql_result *_result) timeval_diff_usecs(&now, &result->finish_time), result->error != NULL ? result->error : "success"); - if (reply_usecs/1000000 >= db->warn_timeout_secs) + if (reply_usecs/1000000 >= db->warn_timeout_secs) { + db->counters[CASSANDRA_COUNTER_TYPE_QUERY_SLOW]++; i_warning("%s", str); - else + } else i_debug("%s", str); }