jaeger - 如何配置 Jaeger 代理以将跟踪信息发送到另一台服务器上的收集器
问题描述
我正在尝试使用 Jaeger 来管理跟踪系统。Docker 与应用程序(在同一主机上)在本地运行“一体化”映像,没有任何问题。我的问题是如何在 host1 上配置 jaeger 代理,它将在另一个 host2 上发送跟踪 jaeger 收集器。Host2 配置为“一体机”。我可以在 host2 上看到 Jaeger UI,但似乎没有从 host1 获得任何痕迹。
配置跟踪器:
var configuration = new Configuration("service-name")
.withSampler(Configuration.SamplerConfiguration.fromEnv())
.withReporter(Configuration.ReporterConfiguration.fromEnv());
GlobalTracer.registerIfAbsent(configuration.getTracer());
return openTracer;
在 host1 的 yaml 文件中添加环境变量:
-e JAEGER_AGENT_HOST=jaeger.hostname.com \
-e JAEGER_AGENT_PORT=6831 \
在 host2 的 yaml 文件中添加了 jaeger 图像:
$ docker run -d --name jaeger \
-p 5775:5775/udp \
-p 6831:6831/udp \
-p 6832:6832/udp \
-p 5778:5778 \
-p 16686:16686 \
-p 14268:14268 \
-p 9411:9411 \
jaegertracing/all-in-one:latest
任何建议将不胜感激。
解决方案
就我而言。主机2
version: '2'
services:
hotrod:
image: jaegertracing/example-hotrod:1.28
ports:
- '8080:8080'
- '8083:8083'
command: ["-m","prometheus","all"]
environment:
- JAEGER_AGENT_HOST=jaeger-agent
- JAEGER_AGENT_PORT=6831
- JAEGER_SAMPLER_TYPE=remote
- JAEGER_SAMPLING_ENDPOINT=http://jaeger-agent:5778/sampling
depends_on:
- jaeger-agent
jaeger-collector:
image: jaegertracing/jaeger-collector:1.28
command:
- "--cassandra.keyspace=jaeger_v1_dc1"
- "--cassandra.servers=cassandra"
- "--collector.zipkin.host-port=9411"
- "--sampling.initial-sampling-probability=.5"
- "--sampling.target-samples-per-second=.01"
environment:
- SAMPLING_CONFIG_TYPE=adaptive
ports:
- "14269:14269"
- "14268:14268"
- "14250:14250"
- "9411:9411"
restart: on-failure
depends_on:
- cassandra-schema
jaeger-query:
image: jaegertracing/jaeger-query:1.28
command: ["--cassandra.keyspace=jaeger_v1_dc1", "--cassandra.servers=cassandra"]
ports:
- "16686:16686"
- "16687"
restart: on-failure
depends_on:
- cassandra-schema
jaeger-agent:
image: jaegertracing/jaeger-agent:1.28
command: ["--reporter.grpc.host-port=jaeger-collector:14250"]
ports:
- "5775:5775/udp"
- "6831:6831/udp"
- "6832:6832/udp"
- "5778:5778"
restart: on-failure
depends_on:
- jaeger-collector
cassandra:
image: cassandra:4.0
cassandra-schema:
image: jaegertracing/jaeger-cassandra-schema:1.28
depends_on:
- cassandra
主机 1 是
version: '2'
services:
jaeger-agent:
image: jaegertracing/jaeger-agent:1.28
command: ["--reporter.grpc.host-port=host2:14250"]
ports:
- "5775:5775/udp"
- "6831:6831/udp"
- "6832:6832/udp"
- "5778:5778"
restart: on-failure
这对我来说很有效
推荐阅读
- javascript - Flow js不适用泛型
- mips - mips : 1 t~ 100 奇数(填空)
- java - 我正在尝试将 OpenGL 中的颜色更改为白色,但它不断切换回黑色
- python - 当被某个半径内的其他值包围时,在熊猫数据框中获得一个不同的值然后为零
- python - Python CSV阅读器:截断文件的开头?缺少前 44797 行
- android - Android 应用程序因链接到歌词而被拒绝 - Musixmatch
- javascript - 在 React 中对齐 GitHub 和 Twitter 按钮
- php - 我如何为多个系列的 ID 编写单个 jquery 函数,以获取它们的一系列依赖 ID?
- java - 从 XML 生成 HTML 时无法使用 JSP 标记或 Servlet
- java - 使用 Xpath 维护 XML 元素的数量