通过 Grafana 使用 PromQL 查询分析观测云数据最佳实践

简介

Grafana 是一个开源的数据可视化和监控工具,它允许您创建仪表盘,将来自各种数据源(如时序数据库、日志系统、云服务等)的数据以图表、图形和表格的形式展示出来。Grafana 支持多种数据源,并提供了强大的查询编辑器和丰富的可视化选项,让您可以根据自己的需求定制监控视图。

观测云是一个统一实时监测平台,它提供全面的系统可观测性解决方案,帮助用户快速实现对云平台、云原生、应用及业务的监控需求。观测云的核心功能包括:基础设施监测,日志采集和分析,用户访问监测(RUM),应用性能监测(APM),服务可用性监测(拨测),安全监测,智能监控等等。这款产品能够帮助工程师全面了解端到端的用户体验追踪,了解应用服务的每一次调用,以及全面监控云时代的基础设施。此外,观测云还具备快速发现系统安全风险的能力,为数字化时代提供安全保障。更多信息可以访问观测云官网:www.guance.com

观测云提供丰富的仪表盘进行数据可视化,但如果由于一些原因,您还是需要通过 Grafana 来展示数据,可以使用观测云提供的 Grafana 插件,对 Grafana 提供了深入的集成和更友好的查询体验。原理上,数据的采集和存储使用观测云,最终的展示通过 Grafana。

安装和配置观测云 Grafana 插件

您可以在 Github 平台上直接下载和安装观测云的 Grafana 插件:github.com/GuanceCloud...

安装配置的步骤非常简单,总共三个步骤就可以通过仪表盘展示数据了。详细步骤请参考上面的链接。

  1. 安装观测云 Grafana 插件,配置后重启 Grafana 服务
  2. 在 Grafana 中添加观测云数据源
  3. 在 Grafana 面板中使用 PromQL 查询数据

使用观测云 Grafana 插件配置仪表盘

通过 PromQL 查询指标数据

在最新版的插件中,支持了使用 PromQL 直接查询指标数据。如果您对于使用 Prometheus+Grafana 有很多经验,观测云插件也可以让您直接上手。使用非常简单,配置好插件之后,在创建仪表盘的时候,选择观测云插件数据源,选择 PromQL 就可以直接查询。

通过 PromQL 查询日志、链路等数据

除了指标数据,其他的可观测数据例如日志、链路数据如何查询呢?可以通过观测云的生成指标功能。

  1. 在观测云中,针对需要统计的日志、APM 数据,通过【生成指标】功能生成指标。

对于需要进行统计的日志、链路数据(APM),甚至是 RUM 数据,例如以下常见的场景:

  • 错误和异常分析:例如 HTTP 状态码统计 (例如 4xx/5xx 数量)
  • 特定错误关键词出现次数: 统计日志中包含"Error"、"Exception"、"Failed"、"Reject"等关键词的日志数量
  • 服务调用耗时分布: 统计每个服务或接口的平均耗时、P99/P95 耗时等
  • 服务调用量: 统计不同服务或接口的调用量
  1. 在 Grafana 中,可以使用 PromQL 对生成的指标进行查询、做图分析。

跨工作空间数据查询

在最新版的插件中,观测云也支持了跨工作空间的数据查询。

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

使用 DQL 语言查询可观测数据

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

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

相关推荐
乐之者v18 小时前
Grafana监控可视化
java·grafana
运维栈记5 天前
使用Grafana监控K8S中的异常Pod
docker·kubernetes·grafana
韩宏伟6 天前
使用 Loki + Promtail + Grafana 实现 Docker 容器日志采集与可视化
docker·容器·grafana
恋上钢琴的虫6 天前
使用 Loki + Promtail + Grafana搭建日志系统
运维·grafana
心一信息6 天前
grafana及zabbix在linux上的部署
linux·zabbix·grafana
Jabes.yang8 天前
Java求职面试: 互联网医疗场景中的缓存技术与监控运维应用
java·redis·spring security·grafana·prometheus·oauth2·互联网医疗
K_i1348 天前
负载均衡:运维高可用的核心技术
负载均衡·grafana·prometheus
电话交换机IPPBX-3CX9 天前
Grafana图表与电话交换机的结合
数据库·mysql·grafana·ip pbx·电话交换机
神秘人X7079 天前
Docker监控:cAdvisor+Prometheus+Grafana实战指南
docker·grafana·prometheus