使用grafana provisioning經過配置方式添加datasource和dashboard

grafana provisioning

grafana provisioning (http://docs.grafana.org/administration/provisioning/#provisioning-grafana)是grafana 5.0後引入的功能,用以支持經過配置的方式進行datasource和dashboard的配置。數據庫

要開啓該功能,首先要在grafana的配置中增長provisioning的選項(http://docs.grafana.org/installation/configuration/#provisioning)。
即在grafana.ini中增長json

[paths]
# folder that contains provisioning config files that grafana will apply on startup and while running.
;provisioning = /etc/grafana/provisioning

然後在/etc/grafana/provisioning中增長dashboardsdatasources文件夾。api

[root@local provisioning]# ll
total 0
drwxr-xr-x 2 root grafana 25 Nov 28 03:09 dashboards
drwxr-xr-x 2 root grafana 25 Nov 28 03:09 datasources

datasources

datasource只支持靜態配置,即,在datasources中配置好後,grafana啓動時候將會進行加載。在grafana啓動後在加入該文件夾,須要重啓才能生效。app

datasoures文件夾下須要放置對應的datasource的yaml文件,這裏以sample.yaml爲例:ide

[root@local provisioning]# cat datasources/sample.yaml 
apiVersion: 1
deleteDatasources:
 - name: influxdb
   orgId: 1
datasources:
 - id: 17
   orgId: 1
   name: influxdb
   type: influxdb
   typeLogoUrl: ''
   access: proxy
   url: http://localhost:8086
   password: root
   user: root
   database: clustersch
   basicAuth: false
   basicAuthUser: ''
   basicAuthPassword: ''
   withCredentials: false
   isDefault: false
   jsonData:
     keepCookies: []
   secureJsonFields: {}
   version: 4
   readOnly: false

能夠看到yaml分爲三部分,apiVersion是固定的。deleteDatasources是啓動時候將會首先從數據庫中刪除的datasource的名稱。經過provisioning加載datasource沒法從頁面進行刪除,只能在deleteDatasources中進行刪除。
再一部分就是datasources,是一個列表,用以表示不一樣的datasource。這裏以influxdb爲例。其餘的也相似,具體能夠參考其餘datasource的參數說明。url

dashboards

不一樣於datasource,dashboards是支持動態加載的。這裏介紹一個標準樣例。code

[root@local provisioning]# cat dashboards/sample.yaml 
apiVersion: 1
providers:
 - name: 'default'
   orgId: 1
   folder: ''
   type: file
   updateIntervalSeconds: 10
   options:
     path: /tmp/grafana

apiVersion是固定字段。providers是一個列表,用來存儲不一樣的dashboard源。這裏主要介紹從本機某個路徑加載dashboard。updateIntervalSeconds是指動態加載的刷新頻率,也就是10s進行一次刷新,從/tmp/grafana中讀取全部的dashboard配置,而後將其添加或者更新到grafana中。flux

/tmp/grafana中,只須要將dashboard的json文件丟到裏面去就能夠了。grafana會自動加載。json文件就是從grafana的dashboard中導出的文件便可。注意一下相關datasource的配置。it

[root@local provisioning]# ll /tmp/grafana/test.json 
-rw-r--r-- 1 root root 24126 Nov 28 03:10 /tmp/grafana/test.json
相關文章
相關標籤/搜索