mirror of
https://github.com/azlux/log2ram.git
synced 2023-10-10 13:37:24 +02:00
Added logrotate support
This commit is contained in:
parent
9f60f97849
commit
dc8c788e05
@ -14,6 +14,8 @@ then
|
|||||||
systemctl enable log2ram
|
systemctl enable log2ram
|
||||||
cp log2ram.hourly /etc/cron.hourly/log2ram
|
cp log2ram.hourly /etc/cron.hourly/log2ram
|
||||||
chmod +x /etc/cron.hourly/log2ram
|
chmod +x /etc/cron.hourly/log2ram
|
||||||
|
cp log2ram.logrotate /etc/logrotate.d/log2ram
|
||||||
|
chmod 644 /etc/logrotate.d/log2ram
|
||||||
|
|
||||||
# Remove a previous log2ram version
|
# Remove a previous log2ram version
|
||||||
if [ -d /var/log.hdd]; then
|
if [ -d /var/log.hdd]; then
|
||||||
|
17
log2ram
17
log2ram
@ -6,6 +6,7 @@ HDD_LOG=/var/hdd.log
|
|||||||
RAM_LOG=/var/log
|
RAM_LOG=/var/log
|
||||||
|
|
||||||
LOG_NAME="log2ram.log"
|
LOG_NAME="log2ram.log"
|
||||||
|
LOGROTATE_PATTERN="${LOG_NAME}*"
|
||||||
LOG2RAM_LOG="${HDD_LOG}/${LOG_NAME}"
|
LOG2RAM_LOG="${HDD_LOG}/${LOG_NAME}"
|
||||||
LOG_OUTPUT="tee -a $LOG2RAM_LOG"
|
LOG_OUTPUT="tee -a $LOG2RAM_LOG"
|
||||||
|
|
||||||
@ -18,7 +19,7 @@ syncToDisk () {
|
|||||||
isSafe
|
isSafe
|
||||||
|
|
||||||
if [ "$USE_RSYNC" = true ]; then
|
if [ "$USE_RSYNC" = true ]; then
|
||||||
rsync -aXWv --delete --exclude $LOG_NAME --links $RAM_LOG/ $HDD_LOG/ 2>&1 | $LOG_OUTPUT
|
rsync -aXWv --delete --exclude $LOGROTATE_PATTERN --links $RAM_LOG/ $HDD_LOG/ 2>&1 | $LOG_OUTPUT
|
||||||
else
|
else
|
||||||
cp -rfup $RAM_LOG/ -T $HDD_LOG/ 2>&1 | $LOG_OUTPUT
|
cp -rfup $RAM_LOG/ -T $HDD_LOG/ 2>&1 | $LOG_OUTPUT
|
||||||
fi
|
fi
|
||||||
@ -38,7 +39,7 @@ syncFromDisk () {
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
if [ "$USE_RSYNC" = true ]; then
|
if [ "$USE_RSYNC" = true ]; then
|
||||||
rsync -aXWv --delete --exclude $LOG_NAME --links $HDD_LOG/ $RAM_LOG/ 2>&1 | $LOG_OUTPUT
|
rsync -aXWv --delete --exclude $LOGROTATE_PATTERN --links $HDD_LOG/ $RAM_LOG/ 2>&1 | $LOG_OUTPUT
|
||||||
else
|
else
|
||||||
cp -rfup $HDD_LOG/ -T $RAM_LOG/ 2>&1 | $LOG_OUTPUT
|
cp -rfup $HDD_LOG/ -T $RAM_LOG/ 2>&1 | $LOG_OUTPUT
|
||||||
fi
|
fi
|
||||||
@ -51,12 +52,20 @@ wait_for () {
|
|||||||
}
|
}
|
||||||
|
|
||||||
case "$1" in
|
case "$1" in
|
||||||
|
clean-rotate)
|
||||||
|
rm -f $HDD_LOG/$LOGROTATE_PATTERN
|
||||||
|
rm -f $RAM_LOG/$LOGROTATE_PATTERN
|
||||||
|
;;
|
||||||
|
|
||||||
|
rotate)
|
||||||
|
rm -f $LOG2RAM_LOG
|
||||||
|
;;
|
||||||
|
|
||||||
start)
|
start)
|
||||||
[ -d $HDD_LOG/ ] || mkdir $HDD_LOG/
|
[ -d $HDD_LOG/ ] || mkdir $HDD_LOG/
|
||||||
mount --bind $RAM_LOG/ $HDD_LOG/
|
mount --bind $RAM_LOG/ $HDD_LOG/
|
||||||
mount --make-private $HDD_LOG/
|
mount --make-private $HDD_LOG/
|
||||||
wait_for $HDD_LOG
|
wait_for $HDD_LOG
|
||||||
rm -f $LOG2RAM_LOG
|
|
||||||
mount -t tmpfs -o nosuid,noexec,nodev,mode=0755,size=$SIZE log2ram $RAM_LOG/
|
mount -t tmpfs -o nosuid,noexec,nodev,mode=0755,size=$SIZE log2ram $RAM_LOG/
|
||||||
wait_for $RAM_LOG
|
wait_for $RAM_LOG
|
||||||
syncFromDisk
|
syncFromDisk
|
||||||
@ -73,7 +82,7 @@ case "$1" in
|
|||||||
;;
|
;;
|
||||||
|
|
||||||
*)
|
*)
|
||||||
echo "Usage: log2ram {start|stop|write}" >&2
|
echo "Usage: log2ram {clean-rotate|rotate|start|stop|write}" >&2
|
||||||
exit 1
|
exit 1
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
|
13
log2ram.logrotate
Normal file
13
log2ram.logrotate
Normal file
@ -0,0 +1,13 @@
|
|||||||
|
/var/hdd.log/log2ram.log
|
||||||
|
{
|
||||||
|
rotate 7
|
||||||
|
daily
|
||||||
|
missingok
|
||||||
|
notifempty
|
||||||
|
delaycompress
|
||||||
|
compress
|
||||||
|
postrotate
|
||||||
|
log2ram rotate > /dev/null
|
||||||
|
endscript
|
||||||
|
}
|
||||||
|
|
@ -8,6 +8,7 @@ then
|
|||||||
rm /usr/local/bin/log2ram
|
rm /usr/local/bin/log2ram
|
||||||
rm /etc/log2ram.conf
|
rm /etc/log2ram.conf
|
||||||
rm /etc/cron.hourly/log2ram
|
rm /etc/cron.hourly/log2ram
|
||||||
|
rm /etc/logrotate.d/log2ram
|
||||||
|
|
||||||
if [ -d /var/hdd.log ]; then
|
if [ -d /var/hdd.log ]; then
|
||||||
rm -r /var/hdd.log
|
rm -r /var/hdd.log
|
||||||
|
Loading…
Reference in New Issue
Block a user