栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

shell监控IBM MQ队列深度,10s扫描三次,有两次以上深度值超过5时,则输出队列名称和深度值。

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

shell监控IBM MQ队列深度,10s扫描三次,有两次以上深度值超过5时,则输出队列名称和深度值。

#!/bin/bash 
#GetMqCurdepth()
#{
 dismq=`dspmq`
 status=`echo $dismq | cut -d ' ' -f2 | cut -d '(' -f2 | cut -d ')' -f1`
 mq_name=`echo $dismq | cut -d '(' -f2 | cut -d ')' -f1`
 if [ $status = 'Running' ]
  then
   echo -e "33[32m MQ队列管理器$mq_name 运行状态正常 33[0m "
  else
   echo -e "33[31m ERROR:MQ队列管理器$mq_name 运行状态异常 33[0m"
   exit
 fi

 disql=`echo "dis ql(*)" | runmqsc $mq_name |grep "YTH" | awk -F"(" '{print $2}' | awk -F")" '{print $1}'`
 for un in `seq 0 2`
  do
   for derth in $disql
    do
     lname=$derth
     disderth=`echo "dis ql($derth) CURDEPTH" | runmqsc $mq_name`
     sderth=`echo "dis ql($disderth) CURDEPTH" | runmqsc $mq_name | grep "CURDEPTH" | grep -v "dis" | cut -d '(' -f2 |cut -d ')' -f1`
     abc=`echo $sderth | cut -d ']' -f6 | cut -d 'C' -f1 | awk '{gsub(/^s+|s+$/, "");print}'`
     if [ $abc -gt 5 ]
      then
       eval $lname[$un]=$abc
     fi
     under=`expr $un + 1`
     echo "$lname 第$under次深度扫描:$abc"
   done
  sleep 5
 done
 for th in $disql
  do
   eval 'length="${'"#$th[*]"'}"'
   if [ $length -ge 2 ] 
    then
     eval 'echo -e "tERROR:队列名称:$th 该队列三次深度值监控中有两次及以上深度值过大,分别为:33[31m${'"$th[*]"'} 33[0m"'
      fi
 done 
#}
#getdepth=$(GetMqCurdepth)
#echo -e "$getdepth n"

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/705865.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号