zoukankan      html  css  js  c++  java
  • 使用python获得activemq信息(通过http://server:8161/

     1 # encoding=utf-8
     2 import urllib2
     3 import cookielib
     4 # from BeautifulSoup import BeautifulSoup
     5 from bs4 import BeautifulSoup
     6 import re
     7 queue_url = "http://192.168.16.218:8161/admin/queues.jsp"
     8 
     9 def MQBrowser(url):
    10     login_page = queue_url
    11 
    12     try:
    13         cj = cookielib.CookieJar()
    14         opener = urllib2.build_opener(urllib2.HTTPCookieProcessor(cj))
    15 
    16         opener.addheaders = [('User-agent', 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)'),
    17                              ('Authorization', 'Basic YWRtaW46YWRtaW4=')]
    18 
    19         opener.open(url)
    20         op = opener.open(login_page)
    21         data = op.read()
    22         return data
    23     except Exception, e:
    24         print str(e)
    25 
    26 
    27 def get_queue_size_by_name(queue_name):
    28     content = MQBrowser(queue_url)
    29     soup = BeautifulSoup(''.join(content))
    30     queue_list = soup.findAll('tbody')[1].findAll('tr')
    31     for i in queue_list:
    32         queue_info = i.findAll('td')
    33         if queue_name == queue_info[0].text.strip():
    34             num_pending = queue_info[1].text.strip()
    35             return num_pending
    36     return -1
    37 
    38 
    39 def get_queue_size():
    40     content = MQBrowser(queue_url)
    41     soup = BeautifulSoup(''.join(content))
    42     queue_list = soup.findAll('tbody')[1].findAll('tr')
    43     queue_dic = {}
    44     for i in queue_list:
    45         queue_info = i.findAll('td')
    46         queue_name = queue_info[0].text.strip()
    47         num_pending = queue_info[1].text.strip()
    48         num_consumer = queue_info[2].text.strip()
    49         num_enqueued = queue_info[3].text.strip()
    50         num_dequeued = queue_info[4].text.strip()
    51         queue_dic[queue_name] = [num_pending, num_consumer, num_enqueued, num_dequeued]
    52     return queue_dic
    53 
    54 
    55 def get_queue_detail(queue_name):
    56     content = MQBrowser("http://127.0.0.1:8161/admin/browse.jsp?JMSDestination=%s" % queue_name)
    57     soup = BeautifulSoup(''.join(content))
    58 
    59 
    60 if __name__ == "__main__":
    61     import sys
    62 
    63     if len(sys.argv) == 2:
    64         queue_name = sys.argv[1]
    65     else:
    66         queue_name = "None"
    67         # print get_queue_size_by_name(queue_name)
  • 相关阅读:
    kubernetes案例 tomcat+mysql
    elasticsearch+logstash+kibana部署
    elasticsearch集群部署以及head插件安装
    Rhel7.4系统部署cobbler
    部署Hadoop2.0高性能集群
    使用haproxy实现负载均衡集群
    nginx实现动静分离的负载均衡集群
    heartrbeat实现web服务器高可用
    keepalived+lvs
    LVS集群之IP TUN模式以及网站压力测试
  • 原文地址:https://www.cnblogs.com/yeyong/p/3960550.html
Copyright © 2011-2022 走看看