-------------------------------Main Program-------------------------------


Monitoring Script:
[root@config ~]# cd asptools/
[root@config asptools]# cat Mem-Monitor.sh

#!/bin/sh
#Author:zhai_kang,20131010
Dest_Path=/var/log/Monitor
###################################################Memory Monitor####################################################
#Check the log directory exists and create
if [[ ! -d $Dest_Path ]]
then
        mkdir -p $Dest_Path
fi
#Log title
if [[ $(date +%H%M) == "0000" ]]
then
        echo -e "yyyymmdd-H:M:S\t\tMem_free\tSwap_free\tSwap_total\tSwap_free_per" > $Dest_Path/Mem-Monitor-$(date +%Y%m%
d).log
fi
#Mem_free
Mem_free=`free -m | grep Mem | awk '{print $4}'`
#Swap_free
Swap_free=`free -m | grep Swap | awk '{print $4}'`
#Swap_total
Swap_total=`free -m | grep Swap | awk '{print $2}'`
#Swap_used
Swap_used=`free -m | grep Swap | awk '{print $3}'`
#Swap_free_per
if [[ $Swap_used != 0 ]]
then
        Swap_free_per="0`echo "scale=2;$Swap_free/$Swap_total" | bc`"
else
        Swap_free_per="`echo "scale=2;$Swap_free/$Swap_total" | bc`"
fi
#Monitoring Data
echo -e "$(date +%Y%m%d-%H:%M:%S)\t$Mem_free\t\t$Swap_free\t\t$Swap_total\t\t$Swap_free_per" >> $Dest_Path/Mem-Monitor-
$(date +%Y%m%d).log
exit


Cron job:
[root@config asptools]# crontab -l

*/1 00,8-16 * * * /root/asptools/Mem-Monitor.sh >> ~/asptools/log/mem.log 2>&1


See the log:
[root@config asptools]# ll log/
total 0
-rw-r--r-- 1 root root 0 Oct 10 17:59 mem.log


[root@config asptools]# cat /var/log/Monitor/Mem-Monitor-20131011.log
101315847.jpg





-------------------------------Syslog Server-------------------------------


Find the directory where the configuration file:
[root@config asptools]# cat /etc/logrotate.conf | grep -B 1 include

# RPM packages drop log rotation information into this directory
include     /etc/logrotate.d


Custom configuration file:
[root@config asptools]# cat /etc/logrotate.d/Monitor

/var/log/Monitor/*.log {
        compress
        notifempty
        rotate         6
        create         0400 root root
        olddir         /var/log/Monitor/old/
        sharedscripts
        weekly
}


Create a log backup directory:
[root@config asptools]# mkdir /var/log/Monitor/old


Manual testing:
[root@config asptools]# logrotate -f /etc/logrotate.d/Monitor



---------------------------------------------------------------------


For more information refer to:man logrotate