GUI Based Filtering instead of using query editor

For an automation project which consists of test results for multiple subsystem (15-20 ), we would like to have visualization / dashboards for each of the subsystems

Below are the high level requirements :-

  1. Able to create / update dashboards for each subsystem
  2. Able to add/remove different type of widgets like table , line charts , bar charts etc. for different reports
  3. Able to save templates for different type of widgets e.g. saved template in DB can be monitoring 1 parameter and and then if user want to monitor 2 parameters , change the width or height , add two y axis etc. update the template and save to DB.
  4. User has personal workspace where templates can be saved but there will be approved templates at global level also.
  5. Able to download / upload the original data sets .

For above requirements , we explored platform like grafana .

However we feel grafana is overkill and we don’t need all the features like query editor , alerts etc . Also we don’t need to support multiple data source and in our application only one data source ( postgres DB ) will be present which will have different tables and relation ships defined . From backend we need to fetch the data based on the filter criteria provided .

However we like the overall approach of having plugin architecture of ability to add / remove dashboards , panels etc. and want to support the same .

Similarly grafana have query editor , however we would like to have is that a user using gui / rest endpoints call , should be able to fetch the filtered data for different type of widgets instead of writing SQL queries .

Is there any way which supports these requirements ? Are we on right track ?

Thanks in advance !

1 Like

Grafana is a lightweight platform with great features and it’s nice to have but you don’t need to use more than one data source and alerts.

You can create a custom panel/data source plugin to use REST endpoint calls and fetch the filtered data avoiding writing SQL queries: Build a panel plugin | Grafana Labs.

Grafana has reusable Grafana panels, which I think will work great for your use case: Create reusable Grafana panels | Grafana Labs