#!/bin/bash # # Example API call script for Die Mobiliar # v0.2 - James Pattinson - August 2021 # # Lists the registered DBs for a given Oracle Host or RAC # and their assigned SLAs # # usage: oracle_list_db.sh MYDIR="$(dirname "$(realpath "$0")")" # source $MYDIR/rbk_api.conf source $MYDIR/oracle_funcs.sh #if [ $# -ne 1 ]; then # echo "Usage: $0 " # exit 1 #fi #RBK_HOST=$1 echo Connecting to Rubrik with IP $RUBRIK_IP # API call to list Oracle DBs ENDPOINT="https://$RUBRIK_IP/api/internal/oracle/db" rest_api_get cat /tmp/rbkresponse.$$ | jq -r '.data[] | {id,name,isRelic,slaAssignment,retentionSlaDomainId,effectiveSlaDomainName,configuredSlaDomainName,isArchiveLogModeEnabled,dataGuardType,dataGuardGroupName,standaloneHostName,dbUniqueName,databaseRole,logBackupFrequencyInMinutes,lastSnapshotTime,isDbLocalToTheCluster} ' | jq -r ' "\(.name), \(.id),\(.isRelic),\(.slaAssignment),\(.retentionSlaDomainId),\(.effectiveSlaDomainName),\(.configuredSlaDomainName),\(.isArchiveLogModeEnabled),\(.dataGuardType),\(.dataGuardGroupName),\(.standaloneHostName),\(.dbUniqueName),\(.databaseRole),\(.logBackupFrequencyInMinutes),\(.lastSnapshotTime),\(.isDbLocalToTheCluster)"' | awk -v FS="," 'BEGIN{print "Name id isRelic slaAssignment retentionSlaDomainId effectiveSlaDomainName configuredSlaDomainName ArcMode DG type DG group Hostname Db unique name DatabaseRole Logfreq Last Snapshot isDbLocalToTheCluster " ;print "==================================================================================================================================================================================================================================================================================================================================================================================================="}{printf "%s %s\t %s\t %-15s %-38s %-43s %-43s %-8s %-17s %-19s %-30s %-15s %-18s %-10s %-10s %s %s %s",$1,$2,$3,$4,$5,$6,$7,$8,$9,$10,$11,$12,$13,$14,$15,$16,$17,$18 ORS}' #echo "file: /tmp/rbkresponse.$$ " cleanup