Dynamically creating a Kibana dashboard

I want my users to run a script (bash or python or anything) with some data as input and that script should create a new Kibana dashboard for the user to visualize the data they gave the script as input. How can I do this?

I'm thinking I have to use the REST API. I notice that things like Filebeat and Metricbeat create readymade dashboards. How do I create such a readymade dashboard myself? Do I have to create my own beats to do this? Which technology within Filebeats and Metricbeats enable them to create these readymade dashboards?

The way the beats dashboards were built is that they were created manually and then exported into the beats configuration- there is nothing dynamic about what's in those.

It is possible to dynamically generate dashboards, but it's unsupported behavior in Kibana. We don't document any of the necessary information for a script to generate a dashboard. If this is something you want to pursue, you'll need to approach this with trial and error.

What I recommend if you want to try this out is:

  1. Build a dashboard manually and export the dashboard (and all dependent objects) as JSON.
  2. Read through the JSON structure to identify parts that might be possible to change, for example you might be able to change the field that a visualization uses.
  3. Reimport all the JSON and see if it fails- there is no validation of the JSON here.
1 Like

This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.