10月8日至10日加入我们,在纽约市了解GraphQL联邦和API平台工程的最新技巧、趋势和新闻。参加2024年纽约市的GraphQL峰会
文档
免费开始

Jaeger 导出器(通过 OTLP)

配置 Jaeger 导出器以进行跟踪


启用和配置Jaeger 导出器 用于 GraphOS 路由器 或 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。例如:

router.yaml
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 代理。

router.yaml
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_delay5s从接收第一个跨度到发送批次的延迟(秒)。
max_concurrent_exports1最大重叠导出请求数。
max_export_batch_size512批次中包括的跨度数。可能会受到最大消息大小限制的限制。
max_export_timeout30s在丢弃数据之前发送跨度之前(秒)的超时。
max_queue_size2048在丢弃跨度数据之前缓冲的最大跨度数。

Jaeger 配置参考

属性默认值描述
enabledfalse启用 OTLP 导出器。
collector收集器特定设置。
agent代理特定设置。
batch_processor批量处理器设置。

代理配置

如果您正在运行 Jaeger 代理,请使用agent配置来设置代理端点。例如:

router.yaml
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 代理配置参考

属性默认值描述
endpointfalse启用 OTLP 导出器。

收集器配置

如果您正在运行Jaeger收集器,则使用收集器配置来设置代理端点。例如:

router.yaml
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收集器配置参考

属性默认值描述
endpointfalse启用 OTLP 导出器。
用户名Jaeger收集器的用户名。
密码Jaeger收集器的密码。
上一页
Dynatrace
下一页
New Relic
评价文章评价在GitHub上编辑编辑论坛Discord

©2024Apollo Graph Inc.,商业名称Apollo GraphQL。

隐私政策

公司