grafana / helm-charts

Apache License 2.0
1.61k stars 2.24k forks source link

Dashborads config are not reloaded #1503

Open HamidullahMuslih opened 2 years ago

HamidullahMuslih commented 2 years ago

Each time when I update the dashboard in the helm values file. The UI shows the same dashboards.

My dashboard config

dashboardProviders:
  dashboardproviders.yaml:
    apiVersion: 1
    providers:
      - name: "defaults"
        orgId: 1
        folder: ""
        type: file
        disableDeletion: false
        editable: true
        options:
          path: /var/lib/grafana/dashboards/defaults

dashboards:
  defaults:
    ## Default Dashboards
    aws-ec2:
      url: https://grafana.com/api/dashboards/11265/revisions/2/download
    aws-ebs:
      url: https://grafana.com/api/dashboards/11268/revisions/2/download
    aws-billing:
      url: https://grafana.com/api/dashboards/139/revisions/15/download
    aws-alb:
      url: https://grafana.com/api/dashboards/650/revisions/8/download
    geth-node:
      url: https://grafana.com/api/dashboards/6976/revisions/3/download

After first deploy it downloads the dashbroads, but when I disable a dashboared in the config and apply the chart as shown below, the UI still shows old dashboards. it does not update, so I go to grafana pod and remove the dashboard json file manually.

   # geth-node:
     # url: https://grafana.com/api/dashboards/6976/revisions/3/download

is there anything I am missing, like enableing config reloader?

smbambling commented 1 year ago

I'm also seeing a similar issue for a method to pull updated dashboard versions from a listed URL. Long term this might be a good activity for something extended with a operator for a watch loop to redownload the JSON files on a set interval. Then setting `updateIntervalSeconds: should auto pull in those updates.

My work around for now is to just update the providers updateIntervalSeconds: values to something different then it previously, which in turn updates the configmap. This triggers a new deployment and thus the INIT container is re-run.