#!/usr/bin/env bash
set -e

cd /var/log/nginx
# создаем папку с данными, если ее нет
if [ ! -d export_tmp ]
then
    mkdir export_tmp
fi
    
if [ ! -d export ]
then
    mkdir export
    chown metrika:metrika export
fi

for LOGFILE in *.log.gz
do
    # пропускаем если файл пустой
    [ -s "$LOGFILE" ] || continue

    # перемещение логфайла
    F="./export_tmp/$LOGFILE"_$(hostname)_$(date +%Y%m%d%H%M%S)_$RANDOM.gz
    mv $LOGFILE $F
    chown metrika:metrika $F
done


# nginx flush logs
[ ! -f /var/run/nginx.pid ] || kill -USR1 `cat /var/run/nginx.pid`

# повторное перемещение, чтобы 100% были правильные права и nginx закрыл файл
mv ./export_tmp/* ./export/ 2>/dev/null || true