From fd22c75850fe3b7cd37173c38e5aa729b3e8d1a2 Mon Sep 17 00:00:00 2001 From: Roman Zhilkin Date: Thu, 23 Jan 2025 20:56:26 +0700 Subject: [PATCH] =?UTF-8?q?=D0=90=D0=B2=D1=82=D0=BE=D0=BC=D0=B0=D1=82?= =?UTF-8?q?=D0=B8=D1=87=D0=B5=D1=81=D0=BA=D0=B0=D1=8F=20=D1=83=D1=81=D1=82?= =?UTF-8?q?=D0=B0=D0=BD=D0=BE=D0=B2=D0=BA=D0=B0=20dashboard?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../container/grafana/import_dashboard.sh | 32 +++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100755 manufacturer/container/grafana/import_dashboard.sh diff --git a/manufacturer/container/grafana/import_dashboard.sh b/manufacturer/container/grafana/import_dashboard.sh new file mode 100755 index 0000000..d93b22b --- /dev/null +++ b/manufacturer/container/grafana/import_dashboard.sh @@ -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}" \ No newline at end of file