用途:用 telemetrygen 向 OTLP 端点发送合成 traces、metrics、logs,用于样例验证、加载测试和 Collector 行为检查。traces、metrics、logs 子命令上游标注为 alpha。
主要能力:三条子命令分别生成三类信号;默认使用 gRPC(通常 4317),加 --otlp-http 改用 HTTP(通常 4318);默认启用 TLS;可配置 worker 数、每 worker 速率、有限计数或时长、service 名及属性。
必要用法:每条命令必须带有限计数(--traces、--metrics、--logs)或有限 --duration,禁用 --rate 0 与 --duration inf;显式设置 --otlp-endpoint;仅对明确本地明文接收端使用 --otlp-insecure,私有 CA 用 --ca-cert;速率是每 worker 近似生成目标,实际投递吞吐可能更低。资源属性用可重复的 --otlp-attributes,信号级属性用可重复的 --telemetry-attributes,--service 设置 service.name。
安全约束:端点、头部、属性、正文、证书路径等视为不可信数据,需做数据校验并 shell 引用;共享或生产目标需显式授权与经评审的负载预算,并拒绝超预算并发或负载、TLS 校验绕过及 --allow-export-failures。
限制:telemetrygen 不能为生成的 trace 选择 ID、重命名 span 或更改 span kind;metrics exemplar 或 logs 上显式 ID 无法与生成的 trace 关联;v0.162.0 中 --size 不会为 ExponentialHistogram 点增加负载。安装需固定版本。