查询您的数据
编辑查询您的数据编辑
查询您的 APM 数据是必不可少的工具,它可以使查找代码中的瓶颈更加直接。
使用查询栏,这是一个强大的数据查询功能,您可以对数据进行高级查询,以筛选您感兴趣的特定信息。
查询栏配有一个方便的自动完成功能,可以帮助您找到字段,甚至提供包含数据的建议。您可以选择查询栏并按键盘上的向下箭头键开始扫描推荐内容。
在 APM 应用程序中查询编辑
在 APM 应用程序中查询时,您只是在 Elasticsearch 文档中的字段中搜索和选择数据。输入查询栏的查询也会作为参数添加到 URL 中,因此可以轻松地与他人共享特定查询或视图。
当您键入时,您会看到一些可用于过滤的交易字段。
要详细了解 Kibana 查询语言功能,请参阅 Kibana 查询语言增强功能 文档。
APM 应用程序查询编辑
APM 查询对于从 服务、交易、错误、指标 和 跟踪 视图中的数据中消除噪音非常有用。
例如,在 服务 视图中,您可以快速查看生产环境中运行的所有已检测服务的列表:service.environment : production
。或者通过包含 APM 代理的名称和它运行的主机来过滤列表:service.environment : "production" and agent.name : "java" and host.name : "prod-server1"
。
在 跟踪 视图中,您可能希望查看运行的任何容器的失败交易结果:transaction.result :"FAILURE" and container.id : *
。
在 交易 视图中,您可能希望仅列出比指定时间阈值慢的交易:transaction.duration.us > 2000000
。或者通过包含服务版本和它运行的 Kubernetes Pod 来过滤列表:transaction.duration.us > 2000000 and service.version : "7.12.0" and kubernetes.pod.name : "pod-5468b47f57-pqk2m"
。
在 Discover 中查询编辑
或者,您可以在 Discover 中查询您的 APM 文档。在 Discover 中查询文档的方式与在 APM 应用程序中查询的方式相同,并且 Discover 支持此页面上显示的所有示例 APM 应用程序查询。
Discover 查询编辑
您可能希望使用 Discover 的一个示例是查看某个端点的所有交易,而不仅仅是样本。
从 v7.6 开始,您可以在 APM 应用程序中查看每个桶的十个样本,而不仅仅是一个样本。
使用 APM 应用程序查找您有兴趣了解更多信息的交易名称和时间桶。然后,切换到 Discover 并进行搜索
processor.event: "transaction" AND transaction.name: "<TRANSACTION_NAME_HERE>" and transaction.duration.us > 13000 and transaction.duration.us < 14000`
在此示例中,我们有兴趣查看所有在 13 到 14 毫秒之间进行的 APIRestController#customers
交易。以下是 Discover 返回的内容
您现在可以探索数据,直到找到您感兴趣的特定交易。复制该交易的 transaction.id
并将其粘贴到 APM 应用程序中,以在 APM 应用程序的上下文中查看数据