婚纱手机网站,关键字排名查询工具,帮人家做网站怎么赚钱,前端技术栈有哪些作者#xff1a;来自 Elastic Valentin Crettaz 了解 AutoOps 如何帮助你调查困扰集群的长期搜索查询以提高搜索性能。 AutoOps 于 11 月初在 Elastic Cloud Hosted 上发布#xff0c;它通过性能建议、资源利用率和成本洞察、实时问题检测和解决路径显著简化了集群管理。
Au…作者来自 Elastic Valentin Crettaz 了解 AutoOps 如何帮助你调查困扰集群的长期搜索查询以提高搜索性能。 AutoOps 于 11 月初在 Elastic Cloud Hosted 上发布它通过性能建议、资源利用率和成本洞察、实时问题检测和解决路径显著简化了集群管理。
AutoOps 每分钟运行数百次分析之一用于检查集群的设置、指标和健康警报当长时间运行的搜索查询困扰你的集群时。长时间运行的搜索查询会严重影响性能导致高资源消耗。让我们看看它的具体工作原理。 什么是 AutoOps? 它是如何工作的
AutoOps for Elastic Cloud Hosted 的优点在于无需执行任何操作。在所有支持 AutoOps 的地区AutoOps 代理会自动附加到任何新的或现有的部署几分钟内指标将开始发送分析将启动一旦检测到可疑情况就会引发事件。
无需启用慢速日志并设置 Filebeat 来跟踪和索引它们只需仔细并定期监控任务管理Task Management API 即可开箱即用。
为了知道是否为给定部署启用了 AutoOps只需转到其 Elastic Cloud 控制台页面并单击 “Manage - 管理” 部署即可。如果屏幕右上角出现 “打开 AutoOpsOpen AutoOps” 按钮则表示 AutoOps 已启用。 在 AutoOps 中打开部署视图Deployment view时我们会立即看到所有最近事件的简要历史记录。在下面的屏幕截图中我们可以看到最近打开了一个 “长时间运行的搜索任务 - Long running search task” 事件。 单击事件会打开一个弹出面板其中显示已检测到的慢速搜索查询的 DSL 以及与该查询的执行上下文相关的大量信息。 长时间运行的搜索任务的剖析
下面的屏幕截图显示了 AutoOps 能够收集并显示在事件弹出面板中的所有信息。我们现在将更详细地回顾每个部分。 1. 涉及的节点
首先我们获得检测到长时间运行查询的节点的链接即 instance-0000000223。该链接允许我们直接跳转到 Nodes 视图Nodes view我们可以在其中找到有关该特定节点的大量指标和信息。 2. 涉及的索引
我们还可以看到查询在哪些索引上运行。在本例中我们可以看到查询在 logs-apache.error-default、logs-nginx.error-default 和另外两个索引上运行。
单击这些索引将转到 Shards 视图Shards view该视图将允许我们查看已识别节点上这些索引的详细分片细分以及也位于该节点上的其他索引的所有分片。该视图将帮助我们检测是否存在可能导致查询缓慢的热点。 3. 查询延迟高的潜在原因
深入挖掘后我们可以看到进行了一些基本的查询分析并且 AutoOps 揭示了查询可能变慢的一些潜在原因。在这种情况下我们可以看到
查询以 30 天的时间间隔运行这可能代表大量数据存在嵌套聚合众所周知这些聚合性能不佳响应可能包含多达 20,000 个聚合存储桶这可能会对节点内存造成负担
对于使用正则表达式或脚本的查询有更多检测规则。此外新的检测规则将定期添加并与索引映射一起考虑。 4. 查询上下文
最后还有一些关于搜索查询上下文的信息需要收集例如
它运行了多长时间它是否可取消附加到 HTTP 调用的所有标头。在这种情况下我们可以看到 trace.id 标头这使得在 APM 中很容易找到它还可以看到 X-Opaque-Id其中包含发送此查询的客户端的指示。在这里我们可以看到查询源自 Kibana 中的 SIEM 警报规则但它也可能是可视化或仪表板甚至是在 Dev Tools 中运行查询的用户。 也适用于 ES|QL
但等等还有更多AutoOps 不仅检测长时间运行的 DSL 查询还检测 ES|QL 查询。在下面的屏幕截图中我们可以看到 AutoOps 检测到了一个缓慢的 ES|QL 查询。
所有相同的上下文信息都可用于 ES|QL 查询只是目前没有进行查询分析。因此AutoOps 尚未提供任何有关如何改进 ES|QL 查询的见解但很快就会添加。 接下来可以做什么
由于此事件是在检测到长时间运行的搜索查询时引发的因此有几个选项。检查查询时如果它看起来像一个恶意查询或由粗心的用户从 Dev Tools 运行的查询那么如果任务仍在运行则可以简单地取消该任务。
另一方面如果它看起来像一个合法查询并且不再运行那么下一步应该是调查 “延迟增加的原因 - reasons for increased latency”其中 AutoOps 列出了通过检查查询检测到的一些潜在问题。目前这仅适用于 DSL未来将支持 ES|QL。 多长时间算长
默认情况下如果搜索查询已运行超过一分钟AutoOps 将引发 “长时间运行的搜索任务 - Long running search task” 事件。这是默认配置设置可以通过单击事件弹出面板右上角的三个点图标然后选择 “自定义 - Customize” 来轻松修改以更改默认持续时间阈值。 如果 AutoOps 正在监控多个集群还可以将自定义设置仅应用于特定集群而不是所有集群。 总结
正如我们所见AutoOps 有助于检测长时间运行的搜索查询并挖掘出有关它们的大量信息。确保利用所有这些信息来改进你的搜索查询并尽可能减轻集群的负载。
另请注意“长时间运行的搜索任务 - Long running search task” 事件只是 AutoOps 知道要检测的数百个其他有见地的事件之一。如果你的部署位于受支持的区域之一请随时转到你的 Elastic Cloud 帐户并启动 AutoOps了解它如何使集群管理变得更加简单。还请继续关注有关其他非常有用的事件和建议的未来文章。
使用 AutoOps 管理 Elastic Cloud 很容易。获得即时性能洞察和成本可见性 - 免费试用 AutoOps 14 天。 原文https://www.elastic.co/search-labs/blog/slow-search-elasticsearch-query-autoops