08.4、配置Alloy转发Traces到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第二步:配置 Tempo Exporter。 使用
otelcol.exporter.tempoforward_to第三步:连接 Processor 和 Exporter。 Traces Processor 的输出(
output.tracesinput导出流程: OTLP Traces → Processor(批处理)→ Tempo Exporter → Tempo Write → Tempo。
OTLP gRPC 配置
OTLP gRPC 是什么? OTLP gRPC 是 OpenTelemetry 的标准协议。
配置 OTLP Receiver 的步骤是什么?
第一步:配置 gRPC 端点。 配置端点端口,通常是
0.0.0.0:4317第二步:配置 HTTP 端点(可选)。 配置 HTTP 端点,通常是
0.0.0.0:4318第三步:配置 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/readyotel-cli验证完整流程: 应用发送 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。