如何统计每个搜索请求的平均耗时?

作者 intergret | 发布于2018年09月20日 | 阅读数:156

想统计每个搜索请求的平均耗时,用的/{index}/_stats/接口里的数据,前后请求两次。比如query阶段的耗时按如下算没错吧,但发现 query+fetch 的时间比kibana里面的Request Time小很多?有谁知道为啥么?如何统计每个搜索请求的平均耗时?

(total.search.query_time_in_millis 2 - total.search.query_time_in_millis 1)/ ( total.search.query_total 2 - total.search.query_total 1)
已邀请:

intergret

赞同来自:

kibana里面的Request Time是对的,但不知道自己算的话应该怎么计算

rochy - rochy_he@jointsky

赞同来自:

你的计算公式应该是正确的,个人猜测 kibana 里面的 Request Time 是整个请求的时间;
一个完整的请求包含了网络传输等过程,而 query_time_in_millis 应该是指搜索执行的时间,也就是搜索结果中 took 的值。

weizijun - 专注elasticsearch三十年

赞同来自:

/{index}/_stats/ 接口的query和fetch时间是shard级别的

要回复问题请先登录注册