文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>监控日志尺寸并报警的shell

监控日志尺寸并报警的shell

时间:2008-04-28  来源:h0ng123

#! /bin/bash
LOG_PATH=/home/logs
ALERT_SIZE=100000k
TMP_FILE=/tmp/log_detail
TOMAIL=’[email protected]
IPADDR=`ifconfig | grep -E ‘Link encap’\|’inet addr’ | awk ‘{if (NR%2==0){print $0} else {printf”%s “,$0}}’ | grep -v lo | awk ‘BEGIN{ORS=” “}{print $1 ” ” $7}’`
SUBJ=’Stat log size exceed ‘$ALERT_SIZE’ at ‘$IPADDR;
find $LOG_PATH -type f -name “*.log*” -size +$ALERT_SIZE -exec du -hs {} \; > $TMP_FILE
CHK_LINE=`cat $TMP_FILE | wc -l`
if [ $CHK_LINE -gt 0 ]
then
(echo -e $SUBJ “\n”; cat $TMP_FILE) | mail -s”$SUBJ” $TOMAIL
fi
cat /dev/null > $TMP_FILE
   
注意的几个地方:
1,用来合并两行使用:awk ‘{if (NR%2==0){print $0} else {printf”%s “,$0}}’
2,awk ‘{printf”%s “,$0}}’ 或者awk ‘BEGIN{ORS=”"}{print $0}’` 可以让awk输出内容不换行。
3,echo -e “\n” 可以在shell里输出换行。
4,cat /dev/null > file 用来在shell里清空文件
5,命令行里email邮件的方式。
相关阅读 更多 +
排行榜 更多 +
辰域智控app

辰域智控app

系统工具 下载
网医联盟app

网医联盟app

运动健身 下载
汇丰汇选App

汇丰汇选App

金融理财 下载