关键信息
- 分类
- 开发与 Web
- 输入类型
- textarea, checkbox
- 输出类型
- html
- 样本覆盖
- 4
- 支持 API
- Yes
概览
环境配置差异可视化器是一款专为开发者和运维人员设计的跨环境配置对比工具。它支持解析 JSON、YAML、TOML 和 ENV 格式,能够一键比对开发、测试和生产环境中的配置差异。通过直观的 HTML 报告,工具会自动高亮配置漂移、缺失的键值,并提供清理建议,同时支持敏感信息打码和树状视图展示,帮助团队安全、高效地排查环境配置问题。
适用场景
- •在应用发布前,需要核对测试环境与生产环境的配置项是否一致,防止漏配或错配。
- •排查因环境配置差异导致的线上 Bug,快速定位发生漂移的变量。
- •重构或迁移项目时,需要整合并清理多个微服务或环境中的冗余配置项。
工作原理
- •在文本框中粘贴多份配置,并使用 === 环境名 (格式) === 作为分隔符(支持 json、yaml、toml、env)。
- •勾选需要的对比选项,如隐藏敏感值、忽略大小写或显示树视图。
- •工具会将嵌套对象和数组展平为点路径(如 database.host),并跨环境对齐相同的逻辑键。
- •生成可视化的 HTML 差异报告,直观展示各环境独有的配置、值不一致的漂移项以及清洗建议。
使用场景
用户案例
1. 对比多环境功能开关与 API 地址
后端开发者- 背景原因
- 项目即将上线,开发环境使用 YAML 配置,而生产环境使用 ENV 环境变量。需要确认新加的功能开关是否已在生产环境正确配置。
- 解决问题
- 手动比对不同格式的配置文件容易遗漏,且难以快速发现值不一致的项。
- 如何使用
- 将开发和生产配置粘贴到“配置集合”中,分别加上 === dev (yaml) === 和 === prod (env) === 头部,并开启“显示树视图”。
- 示例配置
-
=== dev (yaml) === FEATURE_X: true API_URL: https://dev.example.com === prod (env) === FEATURE_X=false API_URL=https://api.example.com - 效果
- 生成 HTML 报告,清晰展示 FEATURE_X 和 API_URL 在两个环境中的值差异,确认生产环境开关已正确关闭。
2. 排查数据库连接配置漂移
运维工程师- 背景原因
- 测试环境(Staging)运行正常,但预发环境(Pre-prod)频繁出现数据库连接超时。两者均使用 JSON 格式的配置。
- 解决问题
- 需要快速找出两个环境中嵌套的数据库配置项(如连接池大小、超时时间)有何不同。
- 如何使用
- 输入两段 JSON 配置,使用 === staging (json) === 和 === preprod (json) === 分隔,勾选“隐藏敏感值”以保护密码。
- 示例配置
-
=== staging (json) === {"db":{"host":"10.0.0.1","port":3306,"pool":10,"password":"test1234"}} === preprod (json) === {"db":{"host":"10.0.0.2","port":3306,"pool":5,"password":"prod5678"}} - 效果
- 报告将嵌套 JSON 展平为 db.pool 等路径,高亮显示预发环境的连接池大小(5)与测试环境(10)不一致,同时密码字段被安全打码。
用 Samples 测试
json, yaml, barcode相关专题
常见问题
支持对比哪些格式的配置文件?
支持标准 JSON、缩进键值对的 YAML、键值语法的 TOML 以及 dotenv 风格的 ENV 格式。您可以在同一个对比任务中混合使用这些格式。
如何分隔不同环境的配置?
请使用 === 环境名 (格式) === 作为头部标签。例如 === dev (yaml) === 和 === prod (env) ===,工具会根据头部自动解析对应内容。
敏感信息(如密码、密钥)会泄露吗?
工具默认开启“隐藏敏感值”功能,会自动识别包含 token、password、secret 等关键字的键,并在报告中将其值打码,确保安全。
嵌套的 JSON 或 YAML 数据如何对比?
工具会自动将嵌套的对象和数组展开成点路径(例如 services[0].url 或 database.host),以便在不同层级结构的配置间进行精准对比。
为什么有些配置项被标记为“漂移”?
当同一个逻辑键在多个环境中都存在,但其对应的值不一致时,工具会将其标记为漂移(Drift),提醒您检查是否符合预期。