couchserver.py 文件源码

python
阅读 27 收藏 0 点赞 0 评论 0

项目:plugins 作者: site24x7 项目源码 文件源码
def metricCollector():
    data = {}

    #defaults
    data['plugin_version'] = PLUGIN_VERSION

    data['heartbeat_required']=HEARTBEAT

    data['units']=METRICS_UNITS

    URL = "http://"+COUCHBASE_SERVER_HOST+":"+COUCHBASE_SERVER_PORT+"/"+COUCHBASE_SERVER_STATS_URI

    try:

        if COUCHBASE_SERVER_USERNAME and COUCHBASE_SERVER_PASSWORD:
           password_mgr = connector.HTTPPasswordMgrWithDefaultRealm()
           password_mgr.add_password(REALM, URL, COUCHBASE_SERVER_USERNAME, COUCHBASE_SERVER_PASSWORD)
           auth_handler = connector.HTTPBasicAuthHandler(password_mgr)
           opener = connector.build_opener(auth_handler)
           connector.install_opener(opener)
        response = connector.urlopen(URL, timeout=10)
        byte_responseData = response.read()
        str_responseData = byte_responseData.decode('UTF-8')

        couchserver_dict = json.loads(str_responseData)
        data['hdd.total']=couchserver_dict['storageTotals']['hdd']['total']
        data['hdd.quotaTotal']=couchserver_dict['storageTotals']['hdd']['quotaTotal']
        data['hdd.usedByData']=couchserver_dict['storageTotals']['hdd']['usedByData']
        data['hdd.used']=couchserver_dict['storageTotals']['hdd']['used']

        data['ram.used']=couchserver_dict['storageTotals']['ram']['used']
        data['ram.quotaUsed']=couchserver_dict['storageTotals']['ram']['quotaUsed']
        data['ram.quotaUsedPerNode']=couchserver_dict['storageTotals']['ram']['quotaUsedPerNode']
        data['ram.quotaTotalPerNode']=couchserver_dict['storageTotals']['ram']['quotaTotalPerNode']
        data['ram.total']=couchserver_dict['storageTotals']['ram']['total']
        for item in data:
            if '.' in item:
                data[item]=convertBytesToMB(data[item]) 

    except Exception as e:
            data['status']=0
            data['msg']=str(e)

    return data
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号