Jaeger 导出器(通过 OTLP)
配置 Jaeger 导出器以进行跟踪
启用和配置Jaeger 导出器 用于 GraphOS 路由器GraphOS 路由器 或 Apollo 路由器核心Apollo 路由器核心。
有关一般跟踪配置,请参阅 路由器跟踪配置。
Jaeger OTLP 配置
从 Jaeger v1.35.0 开始,Jaeger 支持原生的 OTLP 消费,这是向 Jaeger 发送跟踪推荐的方式。
当使用 Docker 运行 Jaeger 时,请确保端口4317 已开放并且COLLECTOR_OTLP_ENABLED
设置为 true
。例如:
docker run --name jaeger \-e COLLECTOR_OTLP_ENABLED=true \-p 16686:16686 \-p 4317:4317 \-p 4318:4318 \jaegertracing/all-in-one:1.35
要配置 routed路由器 通过 OTLP 发送跟踪,请使用Jaeger终结点设置端口4317。例如:
telemetry:exporters:tracing:otlp:enabled: true# Optional endpoint, either 'default' or a URL (Defaults to http://127.0.0.1:4317)endpoint: "http://${env.JAEGER_HOST}:4317"
详细信息请参考OTLP 配置。
Jaeger 本机配置
⚠️ 注意
原生 Jaegar 追踪已弃用,并将在下一次 router 发布中移除。请改用Jaeger via OTLP。
router 可以配置通过代理或 HTTP 收集器将跟踪数据导出到 Jaeger。
除非显式配置为使用收集器,否则默认情况下,router 会使用 Jaeger 代理。
telemetry:exporters:tracing:jaeger:enabled: true
enabled
设置为 true 以启用 Jaeger 导出器。默认为 false。
batch_processor
所有导出器都支持通过batch_processor
配置批量跨度处理器。
如果您在日志中看到以下任何消息,则必须调整您的batch_processor
配置:
OpenTelemetry 跟踪错误发生:无法将跨度发送到批量跨度处理器,因为通道已满
OpenTelemetry 指标错误发生:无法将跨度发送到批量跨度处理器,因为通道已满
确切设置取决于您发送数据到应用程序性能监控器 (APM) 的带宽以及 APM 的带宽配置。随着时间的推移,随着应用程序的变化,预计会调整这些设置。
```yaml telemetry: exporters: tracing: jaeger: batch_processor: max_export_batch_size: 512 max_concurrent_exports: 1 max_export_timeout: 30s max_queue_size: 2048 scheduled_delay: 5s ```batch_processor
配置参考
属性 | 默认值 | 描述 |
---|---|---|
scheduled_delay | 5s | 从接收第一个跨度到发送批次的延迟(秒)。 |
max_concurrent_exports | 1 | 最大重叠导出请求数。 |
max_export_batch_size | 512 | 批次中包括的跨度数。可能会受到最大消息大小限制的限制。 |
max_export_timeout | 30s | 在丢弃数据之前发送跨度之前(秒)的超时。 |
max_queue_size | 2048 | 在丢弃跨度数据之前缓冲的最大跨度数。 |
Jaeger 配置参考
属性 | 默认值 | 描述 |
---|---|---|
enabled | false | 启用 OTLP 导出器。 |
collector | 收集器特定设置。 | |
agent | 代理特定设置。 | |
batch_processor | 批量处理器设置。 |
代理配置
如果您正在运行 Jaeger 代理,请使用agent
配置来设置代理端点。例如:
telemetry:exporters:tracing:jaeger:enabled: true# Optional agent configuration,agent:# Optional endpoint, either 'default' or a socket address (Defaults to 127.0.0.1:6832)endpoint: "${env.JAEGER_HOST}:6832"
Jaeger 代理配置参考
属性 | 默认值 | 描述 |
---|---|---|
endpoint | false | 启用 OTLP 导出器。 |
收集器配置
如果您正在运行Jaeger收集器,则使用收集器
配置来设置代理端点。例如:
telemetry:exporters:tracing:jaeger:enabled: true# Optional collector configuration,collector:# Optional endpoint, either 'default' or a URL (Defaults to http://127.0.0.1:14268/api/traces)endpoint: "http://${env.JAEGER_HOST}:14268/api/traces"username: "${env.JAEGER_USERNAME}"password: "${env.JAEGER_PASSWORD}"
Jaeger收集器配置参考
属性 | 默认值 | 描述 |
---|---|---|
endpoint | false | 启用 OTLP 导出器。 |
用户名 | Jaeger收集器的用户名。 | |
密码 | Jaeger收集器的密码。 |