您的位置:首页 > 运维架构 > Shell

shell 脚本检测模块日志异常并重启

2016-12-05 15:51 225 查看

#!/usr/bin/env bash

#监控 message 模块的异常日志,发送异常日志时
# 记录本机连接redis的数量
# 查询机器的负载
# 重启message模块

LOG_FILE=/opt/message/message.log
MONITOR_LOG_FILE=/opt/message/monitor.log

function log()
{
    echo "`date +'%F %T'` $*" >> $MONITOR_LOG_FILE
}

while :
do
    if tail -100 "${LOG_FILE}" | grep "连接Redis异常" > /dev/null
    then
            log "==================================================="
            log "出现redis连接不上服务器,即将重启message模块..."
            conn_redis_num=`netstat -antl | egrep '6379|6380' | grep 'ESTABLISHED' | wc -l`
            log "当前连接redis tcp连接数:$conn_redis_num;配置连接数:10000"
            sh /data/message/bin/MessageStartListener.sh >> $MONITOR_LOG_FILE
            log "执行重启message模块..."
            sleep 100
    else
        sleep 5
        log "执行检测中"
    fi
done


 

转载于:https://my.oschina.net/wrt/blog/800134

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: