08.4配置Alloy转发Traces到Tempo

分类: Grafana Tempo分布式追踪

配置 Alloy 转发 Traces 到 Tempo

欢迎回到第 8 章的学习。在上一节,我们学习了如何安装 Tempo。现在我们要学习如何配置 Alloy 将 Trace 数据转发到 Tempo。

本节将学习:Tempo Exporter 配置、OTLP gRPC 配置、以及如何验证连接。

Tempo Exporter 配置

配置 Tempo Exporter 的步骤是什么?

第一步:配置 Tempo Write。 配置 Tempo 的推送端点,通常是

http://localhost:3200/api/push
。可以配置外部标签(external_labels),这些标签会添加到所有 Trace。

第二步:配置 Tempo Exporter。 使用

otelcol.exporter.tempo
,通过
forward_to
连接到 Tempo Write 的 receiver。

第三步:连接 Processor 和 Exporter。 Traces Processor 的输出(

output.traces
)指向 Tempo Exporter 的输入(
input
)。

导出流程: OTLP Traces → Processor(批处理)→ Tempo Exporter → Tempo Write → Tempo。

OTLP gRPC 配置

OTLP gRPC 是什么? OTLP gRPC 是 OpenTelemetry 的标准协议。

配置 OTLP Receiver 的步骤是什么?

第一步:配置 gRPC 端点。 配置端点端口,通常是

0.0.0.0:4317
。gRPC 性能更好,推荐使用。

第二步:配置 HTTP 端点(可选)。 配置 HTTP 端点,通常是

0.0.0.0:4318
。HTTP 兼容性更好,可以作为备选。

第三步:配置 TLS(可选)。 配置 TLS 证书和密钥,启用加密。生产环境推荐使用。

OTLP 协议: 应用 → OTLP gRPC(:4317)或 OTLP HTTP(:4318)→ Alloy Receiver → Processor → Exporter → Tempo。

gRPC vs HTTP: gRPC 性能更好,HTTP 兼容性更好。两种协议可以同时配置。

验证连接

验证连接的步骤是什么?

第一步:检查 Tempo 状态。 访问 http://localhost:3200,查看状态页面,确认服务正常运行。

第二步:检查 Alloy 状态。 查看 Alloy 日志,确认没有错误,确认连接到 Tempo。

第三步:发送测试 Trace。 使用 otel-cli 发送测试 Trace,验证 Trace 是否被接收。

第四步:在 Grafana 中查询。 添加 Tempo 数据源,查询 Trace 数据,验证 Trace 是否显示。

验证命令: 使用

curl http://localhost:3200/ready
检查 Tempo 状态,使用
otel-cli
发送测试 Trace。

验证完整流程: 应用发送 Trace → Alloy 接收 → Alloy 转发 → Tempo 存储 → Grafana 查询。整个流程应该正常工作。

这就是验证连接。确保服务正常运行,Trace 数据能够正常传输,可以在 Grafana 中查询 Trace。

本节小结

在本节中,我们学习了配置 Alloy 转发 Traces 到 Tempo:

第一个是 Tempo Exporter 配置。 配置 Tempo Write 和 Exporter,连接 Processor。

第二个是 OTLP gRPC 配置。 配置 gRPC 和 HTTP 端点,支持两种协议。

第三个是验证连接。 检查服务状态和 Trace 数据,确保正常工作。

第四个是完整流程。 应用 → Alloy → Tempo → Grafana,整个流程应该正常工作。

配置流程: 配置 Tempo Write → 配置 Tempo Exporter → 连接 Processor → 验证连接 → 查询 Trace。

这就是配置 Alloy 转发 Traces 到 Tempo。配置完成后,Trace 数据就可以从应用发送到 Tempo,然后在 Grafana 中查询了。

在下一节,我们将学习在 Grafana 中查询 Traces。学习如何添加 Tempo 数据源和查询 Trace。