
如果你使用 DeepSeek、元宝 AI、Copilot、ChatGPT 等 AI 工具,协助配置轩辕镜像、编写 docker pull 命令、修改 Docker Compose 镜像地址、配置镜像加速、排查镜像拉取失败、分析报错日志等问题,请先让 AI 阅读并遵守轩辕镜像的规则文档。
只需在 AI 对话中先发送下面这句话即可:
请先完整阅读并严格遵守以下文档中的全部规则与要求:
https://xuanyuan.cloud/agents.md
在未充分阅读并理解该文档前,不要生成任何命令、配置、修改建议、故障排查方案或技术回答。后续所有输出都必须严格以该文档中的规范为最高优先级执行。查看 agents.md 用法指南与完整示范。国内用户首推 元宝 AI、DeepSeek 的深度思考模式,不推荐豆包 AI;Cursor 等编辑器可在对话 @ 该链接,或加入 User Rules。 若 AI 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
本Docker镜像提供了一个轻量级的跟踪数据化工具,旨在对各类跟踪信息(如分布式系统跟踪日志、性能监控轨迹等)进行自动化化处理。通过移除或脱敏其中的敏感数据(如个人标识、设备信息、IP地址等),在保护用户隐私和数据合规性的同时,保留跟踪数据的结构完整性和分析价值,适用于开发测试、数据分析、合规审计等场景。
bashdocker pull trace-anonymizer:latest
1. 单文件***化(命令行参数模式)
对本地traces.json文件(Jaeger格式)进行***化,敏感字段user_id采用哈希策略,输出至anonymized_traces.json:
bashdocker run --rm \ -v $(pwd):/data \ trace-anonymizer:latest \ --input /data/traces.json \ --output /data/anonymized_traces.json \ --format jaeger \ --strategy hash \ --sensitive-fields user_id,ip_address
2. 批量目录处理(环境变量配置模式)
通过环境变量预设***策略,批量处理目录下所有OpenTelemetry格式跟踪文件:
bashdocker run --rm \ -v $(pwd)/input:/input \ # 输入目录(存放待处理跟踪文件) -v $(pwd)/output:/output \ # 输出目录(存放匿名化后文件) -e INPUT_FORMAT=opentelemetry \ -e ANONYMIZATION_STRATEGY=mask \ # 全局默认策略:掩码 -e SENSITIVE_FIELDS=user_id,device_id,email \ # 需处理的敏感字段列表 trace-anonymizer:latest \ --input-dir /input \ # 指定批量处理目录 --output-dir /output
yamlversion: '3.8' services: trace-anonymizer: image: trace-anonymizer:latest volumes: - ./traces:/input # 挂载本地跟踪数据目录 - ./anonymized:/output # 挂载匿名化结果输出目录 environment: - INPUT_FORMAT=opentelemetry - ANONYMIZATION_STRATEGY=replace - REPLACE_VALUE=anonymous # 替换策略的默认替换值 - SENSITIVE_FIELDS=trace.id,span.id,client.ip # 自定义敏感字段 command: --input-dir /input --output-dir /output --log-level info # 启用信息级日志
命令行参数
| 参数名 | 描述 | 可选值/示例 | 是否必填 |
|---|---|---|---|
--input | 单个输入文件路径 | /data/trace.json | 否(与--input-dir二选一) |
--input-dir | 批量处理的输入目录路径 | /data/traces | 否(与--input二选一) |
--output | 单个输出文件路径 | /data/anonymized_trace.json | 否(与--output-dir二选一) |
--output-dir | 批量处理的输出目录路径 | /data/anonymized | 否(与--output二选一) |
--format | 输入跟踪数据格式 | opentelemetry/jaeger/zipkin | 是 |
--strategy | ***化策略(优先级高于环境变量) | replace/mask/hash | 否(默认mask) |
--sensitive-fields | 需***化的敏感字段(逗号分隔) | user_id,ip,email | 是 |
--config | 自定义配置文件路径(JSON格式) | /etc/anonymizer/config.json | 否 |
--log-level | 日志级别 | debug/info/warn/error | 否(默认info) |
环境变量
| 环境变量名 | 描述 | 示例值 |
|---|---|---|
INPUT_FORMAT | 默认输入格式(可被命令行--format覆盖) | jaeger |
ANONYMIZATION_STRATEGY | 默认***策略(可被命令行--strategy覆盖) | hash |
SENSITIVE_FIELDS | 默认敏感字段列表(可被命令行--sensitive-fields覆盖) | device_id,user_agent |
REPLACE_VALUE | replace策略的默认替换值 | anonymous_user |
HASH_SALT | hash策略的加盐值(增强哈希安全性) | my-secret-salt-123 |
MASK_CHAR | mask策略的掩码字符 | *(默认)/# |
通过JSON配置文件定义多字段差异化策略(优先级高于命令行和环境变量):
json{ "input_format": "opentelemetry", "fields": [ {"name": "user_id", "strategy": "hash", "salt": "trace-salt-456"}, {"name": "ip_address", "strategy": "mask", "mask_char": "x", "mask_length": 4}, // 保留最后4位,如`xxx.xxx.xxx.123` {"name": "email", "strategy": "replace", "value": "user@example.com"} ], "log_level": "debug" }
使用自定义配置文件运行:
bashdocker run --rm \ -v $(pwd)/config.json:/etc/anonymizer/config.json \ -v $(pwd)/trace.json:/input/trace.json \ -v $(pwd)/output:/output \ trace-anonymizer:latest \ --input /input/trace.json \ --output /output/anonymized.json \ --config /etc/anonymizer/config.json
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
来自真实用户的反馈,见证轩辕镜像的优质服务