菜单
开源

启用服务图

服务图是各种服务之间相互关系的直观表示。服务图有助于理解分布式系统的结构以及其组件之间的连接和依赖关系。

相同的服务图指标也可以由 Tempo 生成。对于大型安装,这更高效且推荐使用。要深入了解服务图,请访问此部分

服务图也用于应用性能管理仪表盘。更多信息,请参阅服务图视图文档

开始之前

服务图在 Grafana Alloy 中生成,并推送到与 Prometheus 兼容的后端。生成后,它们可以在 Grafana 中以图表形式呈现。要完全使用服务图,您需要这些组件。

在 Grafana Alloy 中启用服务图

注意

Grafana Alloy 是我们 OpenTelemetry Collector 分发版的新名称。Grafana Agent 已被弃用,并将在 2025 年 10 月 31 日之前进入长期支持 (LTS) 阶段。Grafana Agent 将于 2025 年 11 月 1 日终止生命周期 (EOL)。详细了解我们为什么推荐迁移到 Grafana Alloy

要开始使用服务图,请在 Alloy 配置中启用该功能。

以下示例将 http.methodhttp.target span 属性添加为 Prometheus 标签到生成的服务图指标,然后将指标写入 Grafana OTLP 网关。接收到的 trace spans 会立即写入 OTLP 网关。

alloy
otelcol.receiver.otlp "default" {
  grpc {}
  http {}

  output {
    traces = [
      otelcol.connector.servicegraph.default.input,
      otelcol.exporter.otlp.default.input
    ]
  }
}

otelcol.connector.servicegraph "default" {
  dimensions = ["http.method", "http.target"]
  output {
    metrics = [otelcol.exporter.otlp.default.input]
  }
}

otelcol.exporter.otlp "default" {
  client {
    endpoint = env("OTLP_ENDPOINT")
  }
}

要查看所有可用的配置选项,请参阅组件参考

Grafana

相同的服务图指标也可以由 Tempo 生成。对于大型安装,这更高效且推荐使用。

有关在 Grafana 中查看服务图指标和计算基数的更多信息,请参阅服务器端文档