
#!/bin/sh
# File	:
# By	: Maarten.deBoer@Atos.net, 250425
# Subject	: Script to log the NDMP (backup) status
#(0.2),250425	: Added MAIL
PGM=`basename $0|cut -d\. -f1`
VER="0.2"
LOG="${HOME}/log/${PGM}.log"
SSH="/usr/bin/ssh -n"
CSV="${HOME}/data/${PGM}.csv"
CLUSTERS="${HOME}/etc/clusters"
MAILTO="maarten.deboer@atos.net"
MAILTO=""
HOSTNAME=`hostname|cut -d\. -f1`

if [ "${1}" != "" ]; then
  MAILTO="${1}"
fi

echo "`date` ${PGM} v${VER} started."
echo "  MAILTO=${MAILTO}"
sleep 1
cat ${CLUSTERS} | grep -v ^#|awk '{print $1}'|while read CLUSTER
do
  echo "  CLUSTER=${CLUSTER}"
  DATI=`date +%Y-%m-%d" "%H:%M:%S`
# node;session-id;data-bytes-processed;data-path;
  NDMP_STATUS=` ${SSH} ${CLUSTER} "set -showseparator \";\"  ; system services ndmp status -field data-bytes-processed,data-path"|grep nlnaf | awk -F\; '{print $1";"$2";"$3";"$4";"}'`
# nlnaf103-09;31008;5484145888256;/nlnafsmim07/mim07_vol01002/longretentionbackup_best/Month;
  VOLUME=`echo ${NDMP_STATUS}|awk -F\; '{print $4}'|awk -F\/ '{print $3}'`
  QTREE=`echo ${NDMP_STATUS}|awk -F\; '{print $4}'|awk -F\/ '{print $4}'`
  echo "    VOLUME=${VOLUME} QTREE=${QTREE}"
  if [ "${VOLUME}" != "" ] && [ "${QTREE}" != "" ] ; then
    NODE=`echo ${NDMP_STATUS}|awk -F\; '{print $1}'`
    NDMP_ID=`echo ${NDMP_STATUS}|awk -F\; '{print $2}'`
    BYTES=`echo ${NDMP_STATUS}|awk -F\; '{print $3}'`
    DATA_PATH=`echo ${NDMP_STATUS}|awk -F\; '{print $4}'`
    DISK_USED=`${SSH} ${CLUSTER} "set -showseparator \";\" -unit GB ;quota report -volume ${VOLUME} -tree ${QTREE} -fields disk-used,tree"|grep "${QTREE}"|awk -F\; '{print $5}'|sed 's/GB//g'`
# 'set -showseparator ";" -unit GB  ; quota report -volume mim07_vol01002 -field disk-used,tree'
    
    echo "${DATI};${NODE};${NDMP_ID};${DATA_PATH};${DISK_USED};=${BYTES}/1024/1024/1024;"|tee -a ${CSV}

  fi  # VOLUME
done   # CLUSTER

if [ "${MAILTO}" != "" ]; then
  (date;hostname) | mailx -s ":${HOSTNAME}: NDMP status log [${PGM} v${VER}]" -a ${CSV} "${MAILTO}"
  echo "  Mailed to ${MAILTO}"|tee -a ${LOG}
fi  # MAIL

echo "`date` ${PGM} v${VER} finished."
exit 0

