zoukankan      html  css  js  c++  java
  • RabbitMQ队列监控

    Idle:通过自动发现队列,获取各个队列中的ready,unackd等值

    sudo !!!

     

     1  #!/bin/sh
     2   discovery(){
     3    Queue=(`rabbitmqctl list_queues |grep -v List |awk '{print $1}'`)
     4    len=${#Queue[@]}
     5    printf "{
    "
     6    printf  '	'""data":["
     7    for ((i=0;i<$len;i++))
     8    do
     9      printf '
    		{'
    10      printf ""{#MQ_NAME}":"${Queue[$i]}"}"
    11      if [ $i -lt $[$len-1] ];then
    12        printf ','
    13      fi
    14    done
    15    printf  "
    	]
    "
    16    printf "}
    "
    17  
    18    }
    19 
    20 21 22 messages(){ 23 QUEUE=$1 24 ROW=`rabbitmqctl list_queues |grep -n $QUEUE |awk -F : '{print $1}'` 25 MESSAGES=`rabbitmqctl list_queues messages |awk 'NR=="'''$ROW'''"{print}'` 26 echo $MESSAGES 27 } 28 ready(){ 29 QUEUE=$1 30 ROW=`rabbitmqctl list_queues |grep -n $QUEUE |awk -F : '{print $1}'` 31 READY=`rabbitmqctl list_queues messages_ready |awk 'NR=="'''$ROW'''"{print}'` 32 echo $READY 33 } 34 unack(){ 35 QUEUE=$1 36 ROW=`rabbitmqctl list_queues |grep -n $QUEUE |awk -F : '{print $1}'` 37 UNACK=`rabbitmqctl list_queues messages_unacknowledged |awk 'NR=="'''$ROW'''"{print}'` 38 echo $UNACK 39 } 40 41 42 if [ $1 == "discovery" ]; then 43 discovery 44 elif [ $1 == "messages" ]; then 45 messages $2 46 elif [ $1 == "ready" ]; then 47 ready $2 48 elif [ $1 == "unack" ]; then 49 unack $2 50 fi

     

    
    
      1 UserParameter=rabbitmq.discovery_queue[*],sh /etc/zabbix/zabbix_source/rabbitmq.sh  $1        ###自动发现队列
      2 UserParameter=rabbitmq.queue.list,  sudo rabbitmqctl  list_queues |wc -l                  ###队列个数
      3 UserParameter=rabbitmq.consumer.list,  sudo rabbitmqctl  list_consumers |wc -l                  ###消费者个数
      4 UserParameter=rabbitmq.total.messages[*],  sh /etc/zabbix/zabbix_source/rabbitmq.sh  messages $1  ###总消息
      5 UserParameter=rabbitmq.message.ready[*],   sh /etc/zabbix/zabbix_source/rabbitmq.sh  ready    $1  ###生产数
      6 UserParameter=rabbitmq.message.unackd[*],  sh /etc/zabbix/zabbix_source/rabbitmq.sh  unack    $1  ###未消费数
  • 相关阅读:
    WebRTC之完整搭建Jitsi Meet指南
    使用Jibri进行Jitsi Meet视频录制
    完整开源免费视频会议Jitsi-meet安装教程
    iOS聊天起泡(背景图片被拉伸不变形)----转载--待验证
    技术人对赚钱的思考与摸索
    模板引擎的思考
    SpringBoot单文件与多文件上传
    数据库被删之反思
    分布式配置中心之思考
    正版office产品密钥-激活码
  • 原文地址:https://www.cnblogs.com/xfbc/p/6165384.html
Copyright © 2011-2022 走看看