Add a log file

This commit is contained in:
Jérémy Lecour 2018-09-04 22:50:25 +02:00
parent 29fb639f6f
commit 20c69a8fac

View file

@ -16,6 +16,11 @@ test -f /etc/evomaintenance.cf && . /etc/evomaintenance.cf
PATH=$PATH:/usr/sbin PATH=$PATH:/usr/sbin
SENDMAIL=$(which sendmail) SENDMAIL=$(which sendmail)
LOGFILE=/var/log/evomaintenance.log
touch ${LOGFILE}
chown root:adm ${LOGFILE}
# get ipaddress # get ipaddress
BEGIN_YEAR=$(date "+%Y") BEGIN_YEAR=$(date "+%Y")
@ -34,7 +39,7 @@ else
fi fi
# end_date # end_date
#now() NOW=$(date -u +"%Y-%m-%dT%H:%M:%SZ")
# details # details
echo "Please, enter details about your maintenance" echo "Please, enter details about your maintenance"
@ -45,9 +50,6 @@ if [ "$TEXTE" = "" ]; then
exit 1 exit 1
fi fi
# SQL
TEXTE=`echo "$TEXTE" | sed "s/'/\\\\\\'/g ; s@/@\\\\\/@g ; s@\\&@et@g"`
# recapitulatif # recapitulatif
echo "hostname = $HOSTNAME" echo "hostname = $HOSTNAME"
echo "user = $_USER" echo "user = $_USER"
@ -58,19 +60,27 @@ echo "details = $TEXTE"
echo "To cancel, [Ctrl+C] else press [Enter]" echo "To cancel, [Ctrl+C] else press [Enter]"
read enter read enter
# git stuff # write log
LOG_TEXTE=`echo "${TEXTE}" | sed 's/"/\\\"/g'`
echo "${NOW} hostname=\"${HOSTNAME}\" user=\"${SUDO_USER}\" ip=\"${IP}\" begin_date=\"${BEGIN_YEAR} ${BEGIN_DATE}\" message=\"${LOG_TEXTE}\"" >> ${LOGFILE}
# git commit
if (test -x /usr/bin/git); then if (test -x /usr/bin/git); then
cd /etc/ cd /etc/
git add . git add .
GIT_COMMIT=$(git commit -a -m "$TEXTE" --author="$_USER <$_USER@evolix.net>") GIT_COMMIT=$(git commit -a -m "$LOG_TEXTE" --author="$_USER <$_USER@evolix.net>")
fi fi
# insert into PG
SQL_TEXTE=`echo "$TEXTE" | sed "s/'/\\\\\\'/g ; s@/@\\\\\/@g ; s@\\&@et@g"`
echo " echo "
INSERT INTO evomaint(hostname,userid,ipaddress,begin_date,end_date,details) INSERT INTO evomaint(hostname,userid,ipaddress,begin_date,end_date,details)
VALUES ('$HOSTNAME','$_USER','$IP','$BEGIN_YEAR $BEGIN_DATE',now(),'$TEXTE') " | \ VALUES ('$HOSTNAME','$_USER','$IP','$BEGIN_YEAR $BEGIN_DATE',now(),'$SQL_TEXTE') " | \
psql $PGDB $PGTABLE -h $PGHOST psql $PGDB $PGTABLE -h $PGHOST
# send mail
cat /usr/share/scripts/evomaintenance.tpl | \ cat /usr/share/scripts/evomaintenance.tpl | \
sed -e "s/__TO__/$EVOMAINTMAIL/ ; s/__HOSTNAME__/$HOSTNAME/ ; s/__USER__/$_USER/ ; s/__BEGIN_DATE__/$BEGIN_YEAR $BEGIN_DATE/ ; s/__TEXTE__/$TEXTE/ ; s/__IP__/$IP/ ; s/__FULLFROM__/$FULLFROM/ ; s/__FROM__/$FROM/ ; s/__URGENCYFROM__/$URGENCYFROM/ ; s/__URGENCYTEL__/$URGENCYTEL/"| \ sed -e "s/__TO__/$EVOMAINTMAIL/ ; s/__HOSTNAME__/$HOSTNAME/ ; s/__USER__/$_USER/ ; s/__BEGIN_DATE__/$BEGIN_YEAR $BEGIN_DATE/ ; s/__TEXTE__/$TEXTE/ ; s/__IP__/$IP/ ; s/__FULLFROM__/$FULLFROM/ ; s/__FROM__/$FROM/ ; s/__URGENCYFROM__/$URGENCYFROM/ ; s/__URGENCYTEL__/$URGENCYTEL/"| \
$SENDMAIL -oi -t -f $FROM $SENDMAIL -oi -t -f $FROM