导出新的和修改后的 Beat 仪表板
编辑导出新的和修改后的 Beat 仪表板编辑
要导出任何 Elastic Beat 或任何社区 Beat 的所有仪表板,包括任何新的或修改后的仪表板以及所有依赖项(如可视化、搜索),您可以使用来自 dev-tools 的 Go 脚本 export_dashboards.go
。有关更多信息,请参见 dev-tools 自述文件。
或者,如果上面的脚本不可用,您可以使用您的 Beat 二进制文件导出 Kibana 6.0 或更高版本的仪表板。
从 Kibana 6.0 导出到 7.14编辑
dev-tools/cmd/export_dashboards.go
脚本可帮助您导出自定义的 Kibana 仪表板,直到 v7.14.x 版本。您可能需要导出单个仪表板或导出模块或 Beat 可用的所有仪表板。
也可以使用 Beat 二进制文件导出。
从 Kibana 7.15 或更高版本导出编辑
从 7.15 开始,您的 Beats 版本必须与您的 Kibana 版本相同,以确保所需的导出 API 可用。
迁移使用 Kibana 7.14 或更早版本创建的传统仪表板编辑
将 Kibana 实例更新到至少 7.15 后,您必须使用 export_dashboards.go
工具或 Beat 再次导出仪表板。
导出单个 Kibana 仪表板编辑
要导出模块的单个仪表板,您可以在具有模块的 Beat 中使用以下命令
MODULE=redis ID=AV4REOpp5NkDleZmzKkE mage exportDashboard
./filebeat export dashboard -id 7fea2930-478e-11e7-b1f0-cb29bac6bf8b -folder module/redis
这将在模块/redis 下为仪表板生成一个适当的文件夹,将资产分离到仪表板、搜索、可视化等中。每个导出的文件都是一个 JSON 文件,它们的文件名是资产的 ID。
仪表板 ID 在仪表板 URL 中可用。例如,如果仪表板 URL 是 app/kibana#/dashboard/AV4REOpp5NkDleZmzKkE?_g=()&_a=(description:'Overview%2...
,则仪表板 ID 是 AV4REOpp5NkDleZmzKkE
。
导出所有模块/Beat 仪表板编辑
每个模块都应包含一个 module.yml
文件,其中包含模块可用的所有仪表板的列表。对于不支持模块的 Beat(例如 Packetbeat),有一个 dashboards.yml
文件定义所有 Packetbeat 仪表板。
下面是 Metricbeat 中 system 模块的 module.yml
文件的示例
dashboards: - id: Metricbeat-system-overview file: Metricbeat-system-overview.ndjson - id: 79ffd6e0-faa0-11e6-947f-177f697178b8 file: Metricbeat-host-overview.ndjson - id: CPU-slash-Memory-per-container file: Metricbeat-containers-overview.ndjson
每个仪表板都由一个 id
和一个 ndjson file
文件名定义,该文件名用于在本地保存仪表板。
通过将 yml 文件传递给 export_dashboards.go
脚本或 Beat,您可以导出所有已定义的仪表板
go run dev-tools/cmd/dashboards/export_dashboards.go -yml filebeat/module/system/module.yml -folder dashboards
./filebeat export dashboard -yml filebeat/module/system/module.yml
从 Kibana 空间导出仪表板编辑
如果您使用的是 Kibana 空间功能并想从特定空间导出仪表板,请将空间 ID 传递给 export_dashboards.go
脚本
go run dev-tools/cmd/dashboards/export_dashboards.go -space-id my-space [other-options]
在运行 Beat 的 export dashboard
时,您需要在 setup.kibana.space.id
中设置空间 ID。
导出 Kibana 5.x 仪表板编辑
要仅导出 Elastic Beat 或社区 Beat 的某些 Kibana 仪表板,您可以简单地将正则表达式传递给 export_dashboards.py
脚本以匹配选定的 Kibana 仪表板。
在第一次运行 export_dashboards.py
脚本之前,您需要创建一个包含所有必需 Python 包的环境。
make python-env
例如,要导出以 Packetbeat 名称开头的所有 Kibana 仪表板
python ../dev-tools/cmd/dashboards/export_dashboards.py --regex Packetbeat*
要查看所有可用选项,请阅读以下说明或运行
python ../dev-tools/cmd/dashboards/export_dashboards.py -h
-
--url <elasticsearch_url>
- Elasticsearch URL。默认值为 https://127.0.0.1:9200。
-
--regex <regular_expression>
- 匹配要导出的所有 Kibana 仪表板的正则表达式。此参数是必需的。
-
--kibana <kibana_index>
- Kibana 保存其配置的 Elasticsearch 索引模式。默认值为
.kibana
。 -
--dir <output_dir>
- 将保存仪表板和所有依赖项的输出目录。默认值为
output
。
输出目录具有以下结构
output/ index-pattern/ dashboard/ visualization/ search/