定期处理日志限制日志行数

来源:互联网 发布:手机wifi中继软件 编辑:程序博客网 时间:2024/05/20 13:15

某个目录日志文件越来越大,定期将日志清理掉,以免撑爆服务器。

另外写日志时精简,去掉不必要的日志;

limit-log.sh:控制日志的行数,超过就删掉之前的。

[monitor]$ more ~/bin/limit-log.sh 
#/bin/shfunction limitlog(){  local logfile=$1  local maxline=$2  linecount=`/usr/bin/wc -l $logfile|awk '{print $1}'`;  echo file:$logfile, line count=$linecount. line limit=$maxline.  if [ ${linecount} -gt ${maxline} ];then    delcount=`expr ${linecount} - ${maxline}`;    echo delcount=$delcount    sed -i "1,${delcount}d" $logfile    echo $delcount lines deleted  else    echo do nothing.  fi}#handle monitor.datdatelimitlog /home/monitor/log/monitor.dat 10000000#handle sar.loglimitlog /home/monitor/log/sar.log 20000000#handle redisinfo.logdatelimitlog /home/monitor/log/redisinfo.log 50000000dateecho #############################
其中 sar.log redisinfo.log monitor.dat是要限制的日志文件, 后面的数字是行数。

0 0