菜单
Grafana Cloud Enterprise 开源

TraceQL 查询结构

TraceQL 的目的是搜索或查询 span。查询返回一组 span,也称为 spanset。

TraceQL 查询可以根据以下条件选择 traces:

  • span 属性、时间和持续时间
  • span 之间的结构关系
  • traces 中 span 的聚合数据

与 PromQL 和 LogQL 一样,查询结构为一系列操作(过滤器和聚合器)组成的管道。查询表达式一次对一个 trace 进行评估,从结果中选择或丢弃 span。在查询管道的每个阶段,trace 的选定 span 被分组到一个 spanset(span 集)中。关联的 trace 也被返回。查询结果是所有被评估 traces 的 spansets(及其关联的 traces)。

最简单的查询是:

{ }

花括号包含 select/filter 条件。理论上,每个符合这些条件的 span(及其所属的 trace)都会被查询返回。在前面的示例中,由于没有 filter 条件,所有 span 都匹配,因此与它们关联的 traces 一起返回。

实际上,查询是在定义的时间间隔内执行的,该间隔可以是相对的(例如,最近 3 小时)或绝对的(例如,从 X 日期时间到 Y 日期时间)。查询响应还受 traces 数量(Limit)和每个 spanset 的 span 数量(Span Limit)的限制。

TraceQL in Grafana

  1. TraceQL 查询编辑器
  2. 查询选项:LimitSpan Limit表格格式(Traces 或 Spans)。
  3. Trace(按 Trace ID)。NameService 列显示 trace 根 span 名称和关联的服务。
  4. 与 Trace 关联的 Spans