DocKit vs OpenSearch Dashboards
OpenSearch Dashboards 是 OpenSearch 的标准 Web 界面,主要用于可视化和监控,但日常查询开发用它太重了。它需要单独跑一个服务,10–30 秒的启动时间和 500MB+ 的内存开销,只是想快速跑个查询就显得很浪费。
DocKit 是专为 OpenSearch 查询设计的原生桌面应用。两秒内启动,直接连到你的集群,查询本地存储,没有任何服务端依赖。
功能对比
| DocKit | OpenSearch Dashboards | |
|---|---|---|
| 类型 | 原生桌面应用 | Web 应用(需要服务器) |
| 启动时间 | < 2 秒 | 10–30 秒 |
| 内存占用 | ~150 MB | 500 MB+ |
| 需要 Dashboards 服务器 | ❌ | ✅ |
| 离线模式 | ✅ | ❌ |
| 查询编辑器 | Monaco + JSON5 + 自动补全 | 基础 Dev Tools 控制台 |
| AI 查询助手 | ✅(OpenAI、DeepSeek) | ❌ |
| 查询持久化 | ✅ 本地文件(Git 友好) | ✅ 服务端保存 |
| 索引与集群管理 | ✅ | ✅ |
| 可视化 / 大盘 | ❌ | ✅ |
| 可观测 / 链路追踪 | ❌ | ✅ |
| 告警 | ❌ | ✅ |
| DynamoDB / Elasticsearch | ✅ | ❌ |
| AWS OpenSearch Service | ✅ | ✅(托管版) |
| 开源 | ✅ Apache 2.0 | ✅ Apache 2.0 |
| OS 版本支持 | 1.x – 3.x+ | 与集群版本强绑定 |
什么时候 DocKit 更合适
用 AWS OpenSearch Service
AWS OpenSearch Service 提供了一个托管的 Dashboards 入口,但配置起来经常很麻烦,而且版本永远跟着集群走。DocKit 绕过 Dashboards,直接用你的 AWS 凭证(Access Key、IAM Role 或 Profile)连 OpenSearch REST API。
更快的查询节奏
浏览器工具有固有的摩擦感。Dashboards Dev Tools 标签页要等 Dashboards 实例在浏览器里加载完。DocKit 是原生应用,两秒就能用。如果你每天要跑几十条查询,省下来的时间很可观。
AI 辅助写查询
用自然语言描述查询需求,DocKit 把你的索引 Mapping 作为上下文,生成对应的 OpenSearch DSL。支持 OpenAI 和 DeepSeek,用你自己的 API Key。OpenSearch Dashboards 没有对等的功能。
查询纳入版本控制
DocKit 把历史和保存的查询存成本地文件,可以直接提交到 Git 或作为代码分享给队友。查询记录跟着你走,不依赖当前在用的哪个 Dashboards 实例。
同时用 Elasticsearch 或 DynamoDB
在同一个应用里管理 OpenSearch、Elasticsearch 和 DynamoDB,不用在不同的工具之间来回切换。
什么时候 OpenSearch Dashboards 更合适
以下场景留着 Dashboards:
- 大盘和可视化:内置的引擎(Lens、TSVB)更适合给干系人做图表。
- 告警和监控:直接集成在集群里的基于规则告警。
- 可观测管道:Trace Analytics、Jaeger/Zipkin 集成和特定的日志分析视图。
- Security 插件 UI:通过 Security 插件管理细粒度访问控制、角色和审计日志。
- 共享访问:需要一个团队所有人不装软件就能访问的浏览器 URL。
大多数团队会两个都用:DocKit 给写查询的工程师,Dashboards 给共享监控和干系人报告。
编辑器的区别
OpenSearch Dashboards 里的 Dev Tools 控制台功能够用,但有局限——其实跟从 Kibana 继承来的那套差不多:
- 必须用严格 JSON,不支持内联注释和尾随逗号。
- Mapping 变更后字段自动补全更新慢。
- 没有 AI 支持。
- 保存的查询存在服务器上,绑定特定实例。
- 不能方便地导出成 curl 命令。
DocKit 用的 Monaco 编辑器灵活得多:
- JSON5 支持:查询里可以加注释,尾随逗号不会报错。
- 实时自动补全:连接时直接从 Mapping 里拉字段建议。
- DSL 校验:编辑器检查语法是否符合 OpenSearch Query DSL。
- 一键导出:保存时自动格式化,任何查询一键复制成
curl。 - 多标签:同时开多条查询,并行运行。
- 本地历史:完整的执行历史保存在本地,完全可搜索。
连接 DocKit 到 OpenSearch
自建 OpenSearch
- 下载 DocKit。
- 点 新建连接,选 OpenSearch。
- 填入地址、端口和认证方式(Basic Auth、API Key 或无认证)。
- 点 连接。
AWS OpenSearch Service
- 点 新建连接,选 OpenSearch。
- 填入 Domain Endpoint(
https://...那段 URL)。 - 选 AWS 凭证 认证方式,DocKit 会自动读取
~/.aws/credentials或环境变量。 - 点 连接。
VPC 集群或细粒度访问控制,参考连接指南。
OpenSearch 版本支持
DocKit 使用标准 REST API,支持 OpenSearch 1.x、2.x 和 3.x。和 OpenSearch Dashboards 不同,它不与集群版本绑定。
常见问题
DocKit 是完整的 OpenSearch Dashboards 替代方案吗? 在查询开发和索引管理上,是的。在大盘、可观测和告警方面,不是。大多数团队两个都用。
支持 Amazon OpenSearch Service 吗? 支持。DocKit 用你的 AWS 凭证连接 AWS OpenSearch Service 的 REST Endpoint。Basic Auth 适用于 HTTP 层认证;AWS SigV4 签名在路线图上,可以去 GitHub 跟进进展。
可以在 VPN 后面的 OpenSearch 上用 DocKit 吗? 可以,只要 DocKit 能访问 OpenSearch REST 端口(默认 9200)就行。建好 VPN 或 SSH 隧道后,把 DocKit 指向 localhost 即可。
支持 OpenSearch Serverless 吗? OpenSearch Serverless 要求每个请求都做 SigV4 签名,普通凭证认证不够。可以去 GitHub Issues 了解当前进展。
→ DocKit 完整功能概览 · OpenSearch GUI 客户端页面 · OpenSearch GUI 深度解析
