2.1 KiB
2.1 KiB
Global Dashboard as Code
This repository holds the code to generate the Dynatrace Global Dashboard as Code.
The Global Dashboard splits in 2 different dashboards:
- STAGING
- PROD While the PROD dashboard is adapted manually, the Staging dashboard is auto updated when this script runs.
Files
slo_parameter.yaml
This file specifies which SLO should be presented on the dashboard with the required metadata. Example definition:
TP_Mobile_Login:
index: 1
selector_type: "text"
selector_var: 'CoCo-QM-Report_Mobile'
yearstart: "2022-01-01"
displayname: "Login"
department: "DE-442"
metric: "func:slo.tp_mobile_login"
doc_url: "https://atc.bmwgroup.net/confluence/x/R1OqdQ"
ops_dashboard:
emea: "https"
na: ""
cn: ""
hubs:
euprod:
tiles: ["actual","graph","ytd"]
naprod:
tiles: ["actual","graph","ytd"]
cnprod:
tiles: ["actual","graph","ytd"]
thresholds:
single_value: "99_#577025|98_#f5d30f|0_#ff0000"
graph_value: "99_#353535|98_#f5d30f|0_#ff0000"
Defintion Description:
SLO_Name:
index: int #Ordering of the given SLO within the dashboard
selector_type: str #Query Parameter for Dynatrace
selector_var: str #Query String for Dynatrace
yearstart: date #Date in "2022-01-01" format, to specify year-to-date start date
displayname: str #Display name of the SLO to be displayed on the dashboard
department: str #Department, responsible for this SLO
metric: str #Dynatrace metric selector
doc_url: str #URL of the SLO documentation within Confluence
ops_dashboard: #URLs of sub-dashboards per hub
emea: "https"
na: ""
cn: ""
hubs: #defines on which hub this SLO is active
euprod:
tiles: array #tiles which should be displayed for a specific hub
naprod:
tiles:
cnprod:
tiles:
thresholds:
single_value: str #thresholds and coloring for single value tiles
graph_value: str #thresholds and coloring for graph tiles
createDash . py
This scripts generates the "tile" Section of a Dynatrace Dashboard and takes the slo_parameter.yaml as input parameter (no need to add it manually)