From 2a878f378e392d939b49c8e5464f53e67e090ee9 Mon Sep 17 00:00:00 2001 From: Lalith Kota Date: Wed, 7 Sep 2022 12:38:51 +0530 Subject: [PATCH 1/3] [MOSIP-23040] Added delete_dashboards.sh file --- scripts/delete_kibana_dashboards.sh | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) create mode 100755 scripts/delete_kibana_dashboards.sh diff --git a/scripts/delete_kibana_dashboards.sh b/scripts/delete_kibana_dashboards.sh new file mode 100755 index 0000000..4f27375 --- /dev/null +++ b/scripts/delete_kibana_dashboards.sh @@ -0,0 +1,28 @@ +#!/bin/sh + +if [ $# -lt 1 ] ; then + echo "Usage: ./delete_kibana_dashboards.sh [kubeconfig file]" + exit 1 +fi + +if [ $# -ge 2 ] ; then + export KUBECONFIG=$2 +fi + +KIBANA_URL=$(kubectl get cm global -o jsonpath={.data.mosip-kibana-host}) +read -p "Give Kibana Host Name (Example: \"kibana.sandbox.mosip.net\" or \"box.mosip.net/kibana\"): (default: $KIBANA_URL) " TO_REPLACE +KIBANA_URL=${TO_REPLACE:-$KIBANA_URL} +unset TO_REPLACE + +for file in ${1%/}/*.ndjson ; do + echo "Loading : $file" + IFS=$'\n' larray=($(cat $file)); + for line in "${larray[@]}"; do + type=$(jq -r '.type' <<< $line) + id=$(jq -r '.id' <<< $line) + if [ "$type" != "null" ]; then + echo "Deleting ${type}. id - ${id}" + curl -XDELETE "https://${KIBANA_URL%/}/api/saved_objects/${type}/${id}" + fi + done +done From e630e5ade7a9f06ea8961bef3ec2bf5edb8f80da Mon Sep 17 00:00:00 2001 From: Lalith Kota Date: Wed, 7 Sep 2022 13:08:01 +0530 Subject: [PATCH 2/3] [MOSIP-23040] Edited delete_dashboards.sh file --- scripts/delete_kibana_dashboards.sh | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/scripts/delete_kibana_dashboards.sh b/scripts/delete_kibana_dashboards.sh index 4f27375..b62f056 100755 --- a/scripts/delete_kibana_dashboards.sh +++ b/scripts/delete_kibana_dashboards.sh @@ -1,4 +1,4 @@ -#!/bin/sh +#!/usr/bin/env bash if [ $# -lt 1 ] ; then echo "Usage: ./delete_kibana_dashboards.sh [kubeconfig file]" @@ -18,11 +18,12 @@ for file in ${1%/}/*.ndjson ; do echo "Loading : $file" IFS=$'\n' larray=($(cat $file)); for line in "${larray[@]}"; do - type=$(jq -r '.type' <<< $line) - id=$(jq -r '.id' <<< $line) + type=$(echo $line | jq -r '.type') + id=$(echo $line | jq -r '.id') if [ "$type" != "null" ]; then echo "Deleting ${type}. id - ${id}" - curl -XDELETE "https://${KIBANA_URL%/}/api/saved_objects/${type}/${id}" + curl -XDELETE -H "kbn-xsrf: true" "https://${KIBANA_URL%/}/api/saved_objects/${type}/${id}" + echo ; fi done done From a83eeba0e32a18fc7460f39933bf92d51b7ce1aa Mon Sep 17 00:00:00 2001 From: Lalith Kota Date: Fri, 9 Sep 2022 11:53:16 +0530 Subject: [PATCH 3/3] [MOS-31409] Added script delete dashboards. Added the usage in README.md --- README.md | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index a6d41dd..b990529 100644 --- a/README.md +++ b/README.md @@ -27,13 +27,20 @@ All components will be installed in `reporting` namespace of the cluster. - NOTE: before installing, `reporting-init` debezium configuration, make sure to include all tables under that db beforehand. If one wants to add another table from the same db, it might be harder later on. (TODO: develop some script that adds additional tables under the same db) ### Upload Kibana dashboards -Various Kibana dashboards are available in `dashboards` folder. Upload all of them with the following script: +Various Kibana dashboards are available in [`dashboards`](./dashboards) folder. Upload all of them with the following script: ```sh cd scripts -./load_kibana_dashboards.sh +./load_kibana_dashboards.sh ../dashboards [cluster kubeconfig file] ``` The dashboards may also be uploaded manually using Kibana UI. +### Delete Kibana Dashboards +Run the following script to delete previously uploaded dashboards from [`dashboards`](./dashboards) folder. +```sh +cd scripts +./delete_kibana_dashboards.sh ../dashboards [cluster kubeconfig file] +``` + ## Custom connectors Install your own connectors as given [here](docs/connectors.md)