Mini Shell
Direktori : /usr/lib64/sa/ |
|
Current File : //usr/lib64/sa/sa2 |
#!/usr/bin/sh
# /usr/lib64/sa/sa2
# (C) 1999-2021 Sebastien Godard (sysstat <at> orange.fr)
#
#@(#) sysstat-12.5.4
#@(#) sa2: Write a daily report
#
S_TIME_FORMAT=ISO ; export S_TIME_FORMAT
prefix=/usr
exec_prefix=/usr
SA_DIR=/var/log/sa
SYSCONFIG_DIR=/etc/sysconfig
SYSCONFIG_FILE=sysstat
HISTORY=28
COMPRESSAFTER=31
ZIP="xz"
UMASK=0022
ENDIR=
DELAY_RANGE=0
# Read configuration file, overriding variables set above
[ -r ${SYSCONFIG_DIR}/${SYSCONFIG_FILE} ] && . ${SYSCONFIG_DIR}/${SYSCONFIG_FILE}
umask ${UMASK}
# Wait for a random delay if requested
if [ ${DELAY_RANGE} -gt 0 ]
then
RANDOM=$$
DELAY=$((${RANDOM}%${DELAY_RANGE}))
sleep ${DELAY}
fi
[ -d ${SA_DIR} ] || SA_DIR=/var/log/sa
# if YESTERDAY=no then today's summary is generated
if [ x$YESTERDAY = xno ]
then
DATE_OPTS=
else
DATE_OPTS="--date=yesterday"
fi
if [ ${HISTORY} -gt 28 ]
then
DATE=`date ${DATE_OPTS} +%Y%m%d`
else
DATE=`date ${DATE_OPTS} +%d`
fi
CURRENTFILE=sa${DATE}
CURRENTRPT=sar${DATE}
RPT=${SA_DIR}/${CURRENTRPT}
DFILE=${SA_DIR}/${CURRENTFILE}
if [ -z "${ENDIR}" ];
then
ENDIR=/usr/bin
fi
[ -f "${DFILE}" ] || exit 0
cd ${ENDIR}
if [ x${REPORTS} != xfalse ]
then
${ENDIR}/sar $* -f ${DFILE} > ${RPT}
fi
SAFILES_REGEX='/sar?[0-9]{2,8}(\.(Z|gz|bz2|xz|lz|lzo))?$'
find "${SA_DIR}" -type f -mtime +${HISTORY} \
| egrep "${SAFILES_REGEX}" \
| xargs rm -f
UNCOMPRESSED_SAFILES_REGEX='/sar?[0-9]{2,8}$'
find "${SA_DIR}" -type f -mtime +${COMPRESSAFTER} \
| egrep "${UNCOMPRESSED_SAFILES_REGEX}" \
| xargs -r "${ZIP}" > /dev/null
exit 0
Zerion Mini Shell 1.0