通过 Grafana 使用 PromQL 查询分析观测云数据最佳实践
本文介绍如何通过使用观测云提供的 Grafana 插件,深入集成 Grafana,为用户提供更友好的查询体验。
简介
Grafana 是一个开源的数据可视化和监控工具,它允许您创建仪表盘,将来自各种数据源(如时序数据库、日志系统、云服务等)的数据以图表、图形和表格的形式展示出来。Grafana 支持多种数据源,并提供了强大的查询编辑器和丰富的可视化选项,让您可以根据自己的需求定制监控视图。
观测云是一个统一实时监测平台,它提供全面的系统可观测性解决方案,帮助用户快速实现对云平台、云原生、应用及业务的监控需求。观测云的核心功能包括:基础设施监测,日志采集和分析,用户访问监测(RUM),应用性能监测(APM),服务可用性监测(拨测),安全监测,智能监控等等。这款产品能够帮助工程师全面了解端到端的用户体验追踪,了解应用服务的每一次调用,以及全面监控云时代的基础设施。此外,观测云还具备快速发现系统安全风险的能力,为数字化时代提供安全保障。更多信息可以访问观测云官网:https://www.guance.com
观测云提供丰富的仪表盘进行数据可视化,但如果由于一些原因,您还是需要通过 Grafana 来展示数据,可以使用观测云提供的 Grafana 插件,对 Grafana 提供了深入的集成和更友好的查询体验。原理上,数据的采集和存储使用观测云,最终的展示通过 Grafana。

安装和配置观测云 Grafana 插件
您可以在 Github 平台上直接下载和安装观测云的 Grafana 插件:https://github.com/GuanceCloud/grafana-guance-datasource
安装配置的步骤非常简单,总共三个步骤就可以通过仪表盘展示数据了。详细步骤请参考上面的链接。
- 安装观测云 Grafana 插件,配置后重启 Grafana 服务
- 在 Grafana 中添加观测云数据源
- 在 Grafana 面板中使用 PromQL 查询数据
使用观测云 Grafana 插件配置仪表盘
通过 PromQL 查询指标数据
在最新版的插件中,支持了使用 PromQL 直接查询指标数据。如果您对于使用 Prometheus+Grafana 有很多经验,观测云插件也可以让您直接上手。使用非常简单,配置好插件之后,在创建仪表盘的时候,选择观测云插件数据源,选择 PromQL 就可以直接查询。

通过 PromQL 查询日志、链路等数据
除了指标数据,其他的可观测数据例如日志、链路数据如何查询呢?可以通过观测云的生成指标功能。
- 在观测云中,针对需要统计的日志、APM 数据,通过【生成指标】功能生成指标。
对于需要进行统计的日志、链路数据(APM),甚至是 RUM 数据,例如以下常见的场景:
- 错误和异常分析:例如 HTTP 状态码统计 (例如 4xx/5xx 数量)
- 特定错误关键词出现次数: 统计日志中包含“Error”、“Exception”、“Failed”、“Reject”等关键词的日志数量
- 服务调用耗时分布: 统计每个服务或接口的平均耗时、P99/P95 耗时等
- 服务调用量: 统计不同服务或接口的调用量


- 在 Grafana 中,可以使用 PromQL 对生成的指标进行查询、做图分析。

跨工作空间数据查询
在最新版的插件中,观测云也支持了跨工作空间的数据查询。
工作空间,是观测云提供的多租户功能:观测云以工作空间为单位,各工作空间数据相互独立,确保数据安全。同时,支持跨工作空间数据授权,可将多个工作空间的数据授权给当前工作空间,通过场景仪表板和笔记的图表组件进行查询和展示。配置数据授权后,在 Grafana 中,可以选择需要展示的工作空间,您可以在一个仪表盘中查看所有工作空间的数据。

使用 DQL 语言查询可观测数据
当然,除了 PromQL,通过观测云插件,您可以直接使用观测云的统一查询语言 DQL,查询观测云的各项数据,包括但不限于指标、日志、链路调用,甚至是 RUM 用户前端访问、拨测等各维度。例如 RUM 的数据查询,也可以直接通过 DQL 在 Grafana 中查询和展示。

如果您觉得对 DQL 不太熟悉,这里有个小妙招:可以使用观测云 SaaS AI 助手,支持用自然语言的方式,提交需求,由 AI 助手帮助生成 DQL 语句,从而拷贝 DQL 语言至 Grafana 进行数据查询和图表配置。

Contact us
Join the community
to join the community
Try Guance
Start online and pay only for what you use.
Get startedChoose a Guance plan