
#!/bin/bash
# File	: proc_aggr-usage
# By	: Maarten.deBoer@atos.net, 160128
# Subject	: Script to process the aggr usage & perc (%)
#set -x
#(0.2)	: Added SUPPORTMAILTO
#(0.3)	: Mod. ASUPDATADIR
PGM="`basename $0|cut -d\. -f1`" 
VERS="0.3"
TMP="/tmp/${PGM}.$$"
ASC="/tmp/${PGM}.asc"

BASEDIR="`pwd | sed 's/scripts//'|sed 's/bin//'`"
LOG="${BASEDIR}/log/${PGM}.log"
DATADIR="${BASEDIR}/data"
COUNTRY="`echo ${BASEDIR}| cut -d\/ -f6`"
CSV="${BASEDIR}/data/${COUNTRY}-aggr-usage.csv"
SUPPORTMAILTO="${BASEDIR}/etc/${PGM}.mailto"

#ASUPDATADIR="/appl/mdr/mdrglob/asup-data"
ASUPDATADIR="/appl/asup/data"

MAILTO="maarten.deboer@atos.net"
AFSPSUP="maarten.deboer@atos.net"

echo "`date` ${PGM} v${VERS} Started."|tee -a ${LOG}
touch ${TMP} ${CSV}

# Read Functions file
source ./afsp-db_functions.sh
DB_FUNC_VER

echo ${BASEDIR}

echo "${COUNTRY} ..."
cp /dev/null  ${TMP}
cp /dev/null  ${CSV}
echo "# Aggr usage of ${COUNTRY}: " > ${CSV}
echo "# FILERNAME;SER.NR;AGGR;% USAGE;TOTAL [kb];" >> ${CSV}
# If database, then cd to database
if [ -d /appl/mdr/mdrglob/afsp/${COUNTRY}/data/database ]; then
  cd /appl/mdr/mdrglob/afsp/${COUNTRY}/data/database
  ls -1 | while read DBFILE
  do
#   echo "${DBFILE} ..."
    DB_READ ${DBFILE}

    if [ "${DB_CONTROLER_NAME}" != "" ]; then
      FILERNAME="`grep ^CONTROLER_NAME ${DBFILE}|awk -F\= '{print $2}'`"
      SERIALNUMBER="`grep ^SERIAL_NUMBER ${DBFILE}|awk -F\= '{print $2}'`"
      SYSTEMID="`grep ^SYSTEM_ID ${DBFILE}|awk -F\= '{print $2}'`"
    fi  # NAME && SER.NR
    if [ "${SERIALNUMBER}" != "" ]; then
      ASUPDIR="${ASUPDATADIR}/${FILERNAME}_${SERIALNUMBER}"
	else
      ASUPDIR="${ASUPDATADIR}/${FILERNAME}_${SYSTEMID}"
	fi
	if [ -d ${ASUPDIR} ] && [ -f ${ASUPDIR}/DF-A.txt ] ; then
	  cat ${ASUPDIR}/DF-A.txt|grep -v snapshot | grep "%"|awk -v FILER="${FILERNAME}" -v SERNR="${SERIALNUMBER}" '{print FILER";"SERNR";"$1";"$5";"$2";"}'|tee -a ${TMP}
	else
	  echo "${FILERNAME};${SERIALNUMBER}; No _ DF-A.txt _ found"|tee -a ${TMP}
	fi  # -d ${ASUPDIR}

  done  # DBFILE
fi  # database

# When TMP file not empty then sort into CSV
if [ -s ${TMP} ]; then
  cat ${TMP}|sort -t\; -nk 4 -r|tee -a ${CSV}
# Check if MAILTOFILE is available. Otherwise send to MAILTO
  if [ -f ${SUPPORTMAILTO} ]; then
    MAILTO="`cat ${SUPPORTMAILTO}`"
    echo "List of aggr usage ${COUNTRY}. See attached file. Also to be seen via: https://msssyscol01.atos-srv.net/afsp/${COUNTRY}/aggr-usage.html .  Questions?  mailto:${AFSPSUP} `date`" | mailx -a ${CSV} -s "ASUP: aggr usage of ${COUNTRY} [${PGM} v${VERS}]" ${MAILTO}
    echo "  Mailed to ${MAILTO}"|tee -a ${LOG}
  else
    echo "(NO SUPPORTMAILTO) List of aggr usage ${COUNTRY}." | mailx -a ${CSV} -s "ASUP: aggr usage of ${COUNTRY} [${PGM} v${VERS}]" ${AFSPSUP}
    echo "  Mailed to ${MAILTO}."|tee -a ${LOG}
  fi  # SUPPORTMAILTO

fi

rm ${TMP}
echo "`date` ${PGM} Finished."|tee -a ${LOG}
exit 0

