Exporter Configuration
Exporters 定义了如何将遥测数据从已植入的原生应用发送到可观测性后端。Instrumentation 自定义资源允许您配置控制遥测数据目标和格式的 exporter 设置。
基本 Exporter 配置
Instrumentation CR 中的 exporter 配置指定了遥测数据应发送到的端点:
此配置将所有遥测数据(trace、metric 和 log)通过 OTLP 协议发送到指定端点。
OTLP 协议
OpenTelemetry Protocol (OTLP) 是传输遥测数据的原生协议。它支持 gRPC 和 HTTP 两种传输方式:
- gRPC - 默认端口 4317,二进制协议,序列化效率高
- HTTP - 默认端口 4318,支持 HTTP/1.1 或 HTTP/2,使用 protobuf 或 JSON 编码
您可以通过环境变量指定协议:
信号特定端点
您可以为不同的遥测信号配置不同的端点:
这样可以将不同类型的遥测数据路由到专门的后端。
Exporter Headers
您可以为 exporter 请求添加自定义头部,用于认证或路由:
头部以逗号分隔的键值对形式指定。
超时配置
配置导出超时以控制 SDK 等待导出操作的时间:
超时时间以毫秒为单位。
压缩
启用压缩以减少网络带宽使用:
支持的压缩算法包括 gzip 和 none。
示例配置
以下是一个完整的 exporter 配置示例:
TIP
当使用 OpenTelemetry Collector 作为后端时,请将 exporter 配置指向 Collector 的 OTLP 接收端点。Collector 可以处理路由、处理和转发遥测数据到多个后端。
验证 Exporter 配置
配置 exporter 后,通过以下方式验证遥测数据是否正确发送:
- 检查应用日志中的导出错误
- 监控后端系统的遥测数据接收情况
- 使用 OpenTelemetry Collector 的 debug exporter 检查数据流
NOTE
确保 exporter 端点对您的应用 Pod 可访问。网络策略、服务网格配置和防火墙规则可能影响连接性。