Автоматическая установка dashboard
This commit is contained in:
parent
5d1e1429e8
commit
fd22c75850
1 changed files with 32 additions and 0 deletions
32
manufacturer/container/grafana/import_dashboard.sh
Executable file
32
manufacturer/container/grafana/import_dashboard.sh
Executable file
|
|
@ -0,0 +1,32 @@
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
|
||||||
|
GF_SECURITY_ADMIN_PASSWORD=admin
|
||||||
|
GRAFANA_URL=localhost
|
||||||
|
DASHBOARD_FILE="dashboard.json"
|
||||||
|
DATA_SOURCE_UID="10.10.1.3:9090"
|
||||||
|
|
||||||
|
GRAFANA_URL=http://admin:${GF_SECURITY_ADMIN_PASSWORD}@${GRAFANA_URL}:3000
|
||||||
|
|
||||||
|
if [[ ! -f "$DASHBOARD_FILE" ]]; then
|
||||||
|
echo "Ошибка: Файл с дашбордом '${DASHBOARD_FILE}' не найден."
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
DASHBOARD_JSON=$(<"$DASHBOARD_FILE")
|
||||||
|
|
||||||
|
DASHBOARD_JSON=$(echo "$DASHBOARD_JSON" | sed "s/\${DS_LOCALHOST}/$DATA_SOURCE_UID/g")
|
||||||
|
|
||||||
|
IMPORT_JSON=$(jq -n --argjson dashboard "$DASHBOARD_JSON" \
|
||||||
|
'{dashboard: $dashboard, overwrite: true}')
|
||||||
|
|
||||||
|
|
||||||
|
echo "Измененный JSON дашборда:"
|
||||||
|
echo "$IMPORT_JSON"
|
||||||
|
|
||||||
|
|
||||||
|
response=$(curl -X POST "${GRAFANA_URL}/api/dashboards/import" \
|
||||||
|
-H "Content-Type: application/json" \
|
||||||
|
-d "${IMPORT_JSON}")
|
||||||
|
|
||||||
|
echo "Ответ от Grafana: ${response}"
|
||||||
Loading…
Add table
Add a link
Reference in a new issue