是否可以在 Elasticsearch 搜索请求上做类似于'traceroute'的事情?



我在工作地点遇到了一个问题。 我们在 Elasticsearch 安装中对几种路由策略进行了 A/B。 我负责使用 JMeter 测试对其进行测试,因此我对路由策略差异的唯一反馈基本上只是某些 API 请求的普通响应时间。

我想要更深入的分析。

是否可以执行某种类似跟踪路由的请求(通过 ES API(,该请求可以为我提供有关搜索请求发送方式、涉及哪些分片以及如何合并搜索的性质的更多信息? 我仍然在学习这个ES东西的匝道上,但我开始加快一点速度。

提前谢谢。

您可以配置和启用慢日志,请参阅 https://www.elastic.co/guide/en/elasticsearch/reference/current/index-modules-slowlog.html

您可以定义查询和提取阶段的阈值。这些日志还显示执行查询的节点和分片。

Elasticsearch 文档页面中的示例:

[2030-08-30T11:59:37,786][WARN ][i.s.s.query] [node-0] [index6][0] took[78.4micros], took_millis[0], total_hits[0 hits], stats[], search_type[QUERY_THEN_FETCH], total_shards[1], source[{"query":{"match_all":{"boost":1.0}}}], id[MY_USER_ID],

使用 ES 的服务执行的任何跟踪都需要在那里完成。在这里,您可以使用Zipkin。

最新更新