Exporting New and Modified Beat Dashboards

edit

To export all the dashboards for any Elastic Beat or any community Beat, including any new or modified dashboards and all dependencies such as visualizations, searches, you can use the Python script export_dashboards.py from dev-tools. See the dev-tools readme for more info.

You can make use of the Makefile from the Beat GitHub repository to export all the Kibana dashboards for a Beat from your Elasticsearch. If Elasticsearch is running on localhost, then you just need to run the following command from the Beat repository:

make export-dashboards

If Elasticsearch is running on a different host, then you can use the ES_URL variable:

ES_URL="http://192.168.3.206:9200" make export-dashboards

To export only some Kibana dashboards for an Elastic Beat or community Beat, you can simply pass a regular expression to the export_dashboards.py script to match the selected Kibana dashboards.

Before running the export_dashboards.py script for the first time, you need to create an environment that contains all the required Python packages.

make python-env

For example, to export all Kibana dashboards that start with the Packetbeat name:

python ../dev-tools/export_dashboards.py --regex Packetbeat*

To see all the available options, read the descriptions below or run:

python ../dev-tools/export_dashboards.py -h
--url <elasticsearch_url>
The Elasticsearch URL. The default value is http://localhost:9200.
--regex <regular_expression>
Regular expression to match all the Kibana dashboards to be exported. This argument is required.
--kibana <kibana_index>
The Elasticsearch index pattern where Kibana saves its configuration. The default value is .kibana.
--dir <output_dir>
The output directory where the dashboards and all dependencies will be saved. The default value is output.

The output directory has the following structure:

output/
    index-pattern/
    dashboard/
    visualization/
    search/