本站支持搜索的镜像仓库:Docker Hub、gcr.io、ghcr.io、quay.io、k8s.gcr.io、registry.gcr.io、elastic.co、mcr.microsoft.com

tracegen 是一款用于生成稳定简单追踪流的工具,主要用于分布式系统的性能调优场景。该工具通过一个或多个工作 goroutine 并发生成追踪数据,支持多种导出格式,可灵活配置目标接收端。
-exporter 标志配置不同的追踪数据导出格式直接通过 docker run 命令启动容器,生成追踪数据:
# 示例:生成 10 条追踪数据,服务名为 "abcd" docker run jaegertracing/jaeger-tracegen -service abcd -traces 10
通过 -h 标志查看所有可用命令行参数:
docker run jaegertracing/jaeger-tracegen -h
常用核心参数说明:
| 参数名 | 描述 | 默认值 |
|---|---|---|
-service | 生成的追踪数据所属服务名 | tracegen |
-traces | 需生成的追踪总数 | 100 |
-exporter | 导出格式(如 otlp) | 未指定 |
-workers | 并发工作 goroutine 数量 | 1 |
-exporter 时,工具使用默认导出方式localhost(本地主机)在容器中运行时,localhost 指向容器自身的网络命名空间。如需将追踪数据导出到其他容器(如 Jaeger collector 或 OpenTelemetry collector),需通过参数或环境变量显式指定目标地址,例如:
# 示例:导出追踪数据到同一网络中的 Jaeger collector(地址为 jaeger-collector:4317) docker run --network=trace-network jaegertracing/jaeger-tracegen \ -service test-service \ -traces 100 \ -exporter otlp
当使用 -exporter otlp 时,需通过环境变量配置 OTLP 导出参数,遵循 OpenTelemetry 协议规范。常用环境变量:
| 环境变量 | 描述 | 示例值 |
|---|---|---|
OTEL_EXPORTER_OTLP_ENDPOINT | OTLP 接收端地址 | [***] |
OTEL_EXPORTER_OTLP_PROTOCOL | 传输协议(grpc/http/json) | grpc |
OTEL_EXPORTER_OTLP_TIMEOUT | 导出超时时间(毫秒) | 5000 |
可通过 docker-compose.yml 集成 tracegen 与追踪系统(如 Jaeger),示例配置:
version: '3' services: jaeger: image: jaegertracing/all-in-one:latest ports: - "16686:16686" # Jaeger UI - "4317:4317" # OTLP gRPC 接收端口 environment: - COLLECTOR_OTLP_ENABLED=true tracegen: image: jaegertracing/jaeger-tracegen depends_on: - jaeger environment: - OTEL_EXPORTER_OTLP_ENDPOINT=[***] - OTEL_EXPORTER_OTLP_PROTOCOL=grpc command: ["-service", "demo-service", "-traces", "1000", "-workers", "5", "-exporter", "otlp"]
启动命令:
docker-compose up
| 参数名 | 类型 | 描述 | 默认值 |
|---|---|---|---|
-h | bool | 显示帮助信息 | false |
-service | string | 追踪数据所属服务名 | tracegen |
-traces | int | 总追踪数量 | 100 |
-spans | int | 每条追踪包含的跨度(span)数量 | 10 |
-workers | int | 并发工作 goroutine 数量 | 1 |
-exporter | string | 导出格式(支持 otlp 等) | 未指定 |
-duration | string | 持续生成追踪的时间(如 5s) | 未指定(按 -traces 数量生成) |
| 环境变量 | 描述 | 可选值 |
|---|---|---|
OTEL_EXPORTER_OTLP_ENDPOINT | OTLP 接收端基础 URL | http://<host>:<port> 或 grpc://<host>:<port> |
OTEL_EXPORTER_OTLP_PROTOCOL | 传输协议 | grpc(默认)、http/protobuf、http/json |
OTEL_EXPORTER_OTLP_TIMEOUT | 单次导出超时时间(毫秒) | 正整数(如 5000) |
OTEL_EXPORTER_OTLP_HEADERS | 额外 HTTP 请求头 | key1=value1,key2=value2 |
OTEL_EXPORTER_OTLP_COMPRESSION | 数据压缩方式 | gzip、none(默认) |
免费版仅支持 Docker Hub 加速,不承诺可用性和速度;专业版支持更多镜像源,保证可用性和稳定速度,提供优先客服响应。
免费版仅支持 docker.io;专业版支持 docker.io、gcr.io、ghcr.io、registry.k8s.io、nvcr.io、quay.io、mcr.microsoft.com、docker.elastic.co 等。
当返回 402 Payment Required 错误时,表示流量已耗尽,需要充值流量包以恢复服务。
通常由 Docker 版本过低导致,需要升级到 20.x 或更高版本以支持 V2 协议。
先检查 Docker 版本,版本过低则升级;版本正常则验证镜像信息是否正确。
使用 docker tag 命令为镜像打上新标签,去掉域名前缀,使镜像名称更简洁。
探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录方式配置轩辕镜像加速服务,包含7个详细步骤
在 Linux 系统上配置轩辕镜像源,支持主流发行版
在 Docker Desktop 中配置轩辕镜像加速,适用于桌面系统
在 Docker Compose 中使用轩辕镜像加速,支持容器编排
在 k8s 中配置 containerd 使用轩辕镜像加速
在宝塔面板中配置轩辕镜像加速,提升服务器管理效率
在 Synology 群晖NAS系统中配置轩辕镜像加速
在飞牛fnOS系统中配置轩辕镜像加速
在极空间NAS中配置轩辕镜像加速
在爱快ikuai系统中配置轩辕镜像加速
在绿联NAS系统中配置轩辕镜像加速
在威联通NAS系统中配置轩辕镜像加速
在 Podman 中配置轩辕镜像加速,支持多系统
配置轩辕镜像加速9大主流镜像仓库,包含详细配置步骤
无需登录即可使用轩辕镜像加速服务,更加便捷高效
需要其他帮助?请查看我们的 常见问题 或 官方QQ群: 13763429