Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #/bin/sh
- #set -x
- USER=xxx
- PASS=yyy
- CC_OFFSHORE="xxx@hang.com , yyy@hang.com , zzz@hang.com"
- CC_TEAM="$CC_OFFSHORE , special_recipient@hang.com"
- . /home/oracle/.TESTenv #(NOT MANDATORY. DEPENDS ON YOUR ENVIRONMENT)
- sqlplus -s $USER/$PASS << EOF
- spool /home/oracle/SABARISH/RETVAL.log
- set linesize 140
- SET PAGESIZE 0 FEEDBACK OFF VERIFY OFF HEADING OFF ECHO OFF
- col group_number format 999
- col diskgroup format a20
- col total_mb format 999,999,999
- col free_mb format 999,999,999
- col tot_used format 999,999,999
- col pct_used format 999
- col pct_free format 999
- select group_number,
- name diskgroup,
- total_mb,
- free_mb,
- total_mb-free_mb tot_used,
- pct_used,
- pct_free
- from (select group_number,name,total_mb,free_mb,
- round(((total_mb-nvl(free_mb,0))/decode(total_mb,0,1,total_mb))*100) pct_used,
- round((free_mb/total_mb)*100) pct_free
- from v$asm_diskgroup
- where total_mb >0
- order by pct_free
- )
- /
- spool off;
- EOF
- while read -r values
- do
- USED_PCT=$(echo $values | awk '{print $6}')
- DISKGROUP_NAME=$(echo $values | awk '{print $2}')
- WARNING_LIMIT=60
- CRITICAL_LIMIT=70
- if [ ${USED_PCT} -ge ${WARNING_LIMIT} ] && [ ${USED_PCT} -lt ${CRITICAL_LIMIT} ]
- then
- echo "WARNING ALERT. $DISKGROUP_NAME disk has used $USED_PCT%" | mailx -s "(WARNING ALERT $USED_PCT% used)" $CXC_OFFSHORE
- elif [ ${USED_PCT} -ge ${CRITICAL_LIMIT} ]
- then
- echo "CRITICAL ALERT.$DISKGROUP_NAME disk has used $USED_PCT%" | mailx -s "(CRITICAL ALERT $USED_PCT% used)" $CXC_TEAM
- fi
- done < /home/oracle/SABARISH/RETVAL.log
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement