菜单
Grafana Cloud Enterprise 开源

Graphite 查询编辑器

Grafana 包含 Graphite 专用的查询编辑器,可帮助您构建查询。查询编辑器可帮助您快速浏览指标空间、添加函数和更改函数参数。它可以通过使用查询引用来处理所有类型的 Graphite 查询,包括复杂的嵌套查询。

有关在 Grafana 中查询数据源的通用文档,请参阅查询和转换数据

查看原始查询

要查看 Grafana 发送到 Graphite 的原始查询文本,请单击切换文本编辑模式(铅笔)图标。

选择要查询的指标

单击选择指标以浏览指标空间。开始后,您可以使用鼠标或键盘箭头键。您还可以选择通配符并继续。

函数

单击函数旁边的加号图标以添加函数。您可以搜索函数或从菜单中选择它。选择函数后,它将被添加,并且您的焦点将位于第一个参数的文本框中。

  • 要编辑或更改参数,请单击它,它将变成一个文本框。
  • 要删除函数,请单击函数名称,然后单击 x 图标。

某些函数(如 aliasByNode)支持可选的第二个参数。要添加参数,请将鼠标悬停在第一个参数上,然后单击出现的 + 符号。要删除第二个可选参数,请单击它并留空,编辑器将将其移除。

要了解更多信息,请参阅Graphite 关于函数的文档

警告

某些函数接受第二个参数,该参数可能是一个返回序列的函数。如果您添加的第二个参数是一个函数,建议使用第二个查询中的序列引用,而不是函数本身。查询编辑器当前在查询编辑器和代码编辑器之间切换时不支持解析作为函数的第二个参数。

排序标签

如果您在多个图表上使用相同的标签,它们的排序方式和颜色会有所不同。

为了避免这种情况并按名称一致地排序标签,请使用 sortByName() 函数。

修改我的表格或图表中的指标名称

使用 alias 函数,例如 aliasByNode()aliasSub(),来更改 Grafana 表格或图表上的指标名称。

合并数据点

Grafana 会合并所有 Graphite 指标,以确保 Graphite 返回的数据点不超过图表中的像素数。默认情况下,Grafana 使用 avg 函数合并数据点。要控制 Graphite 如何合并指标,请使用 Graphite 的 consolidateBy() 函数。

注意

图例摘要值(最大值、最小值、总计)无法同时全部正确,因为它们是由 Grafana 在客户端计算的。根据您的合并函数,只有一两个可能同时正确。

组合时间序列

要组合时间序列,请单击函数列表中的组合

使用标签选择和探索数据

在 Graphite 中,一切都是标签。

探索数据时,之前选择的标签会过滤剩余的结果集。要选择数据,请使用 seriesByTag 函数,该函数接受标签表达式(=!==~!=~)来过滤时间序列。

在您选择标签时,Grafana 查询构建器会自动为您完成此操作。

注意

正则表达式搜索在高基数标签上可能很慢,因此请尝试先使用其他标签来缩小范围。为了帮助减少结果,可以先按特定名称或命名空间进行过滤。

嵌套查询

您可以像电子表格一样,通过查询所在的行的“字母”来引用它。

如果您向图表添加第二个查询,可以通过输入 #A 来引用第一个查询。这有助于您构建复合查询。

使用通配符减少查询次数

要在同一图表上查看绘制的多个时间序列,请在搜索中使用通配符,以便在一个查询中返回所有匹配的时间序列。

例如,要查看机器上 CPU 的利用率,您可以创建一个图表并使用单个查询 cpu.percent.*.g 来检索所有匹配该模式的时间序列。这比为每个时间序列添加查询(例如 cpu.percent.user.gcpu.percent.system.g 等)更高效,后者会导致向数据源发出许多查询。

应用注解

注解将丰富的事件信息叠加在图表上方。您可以在仪表盘菜单的“注解”视图中添加注解查询。

Graphite 支持两种查询注解的方式

  • 常规指标查询,使用 Graphite query 文本框。
  • Graphite 事件查询,使用带有标签、通配符或空值的 Graphite event tags 文本框

将 Grafana 指标导入 Graphite

Grafana 在 /metrics 端点上暴露 Graphite 的指标。有关详细说明,请参阅Grafana 内部指标

与 Loki 集成

在 Explore 中更改数据源选择时,Graphite 查询会转换为 Loki 查询。根据 Graphite 数据源配置中提供的映射信息,Loki 标签名称和值会从 Graphite 查询中提取。使用 seriesByTags() 标签的查询也会在无需额外设置的情况下进行转换。

有关更多详细信息,请参阅 Graphite 数据源设置。