def monitor_alarm_proc(self):
     logging.info("task  task_id:" + str(self.last_id) + " monitor_alarm_proc start")
     monitor_result = {}
     for item in self.NewIndexInterface_conf:
         desc = item["desc"]
         interface = item["interface"]
         ip_port = item["ip_port"]
         url = item["url"]
         method = item["method"]
         params = item["params"]
         expect = item["expect"]
         compare = item["compare"]
         flag = item["flag"]
         data = None
         monitor_result[interface] = {"status": 0, "msg": "ok"}
         if flag == 1:
             # print params
             h = httpclientLib(ip_port, url, method=method, params=params)
             status, data = h.request()
             if status != 200:
                 monitor_result[interface] = {"status": -1, "msg": url + " access exception"}
                 continue
             try:
                 print json.dumps(data, ensure_ascii=False)
                 print data
                 print expect
                 logging.info("****************" + desc + "****************")
                 logging.info(json.dumps(data, ensure_ascii=False))
                 logging.info(json.dumps(expect, ensure_ascii=False))
                 tmp = json.dumps(data, ensure_ascii=False)
                 # print tmp
                 values = find_values("url", json.loads(tmp))
                 error_item_list = []
                 for item in values:
                     # print item
                     h = httpclientLib(ip_port, url, method=method, params=params)
                     status, data = h.request()
                     if status != 200:
                         error_item_list.append(item)
                 if len(error_item_list) != 0:
                     monitor_result[interface] = {"status": -1, "msg": error_item_list}
             except Exception as e:
                 monitor_result[interface] = {"status": -1, "msg": "response exception"}
     # print monitor_result
     logging.info(json.dumps(monitor_result))
     total = 0
     normal = 0
     exception = 0
     for item in monitor_result:
         total += 1
         if monitor_result[item]["status"] == 0:
             normal += 1
         else:
             exception += 1
     mysql = mysqlLib()
     uptime = datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S")
     param = (total, normal, exception, json.dumps(monitor_result), uptime, "NewIndex")
     mysql.update_tbl_seo(param)
     mysql.close()
     logging.info("task  task_id:" + str(self.last_id) + " monitor_alarm_proc complete")
 def monitor_alarm_proc(self):
     logging.info("task  task_id:" + str(self.last_id) + " monitor_alarm_proc start")
     monitor_result = {}
     for item in self.TSMInterface_conf:
         desc = item['desc']
         interface = item['interface']
         ip_port = item['ip_port']
         url = item['url']
         method = item['method']
         params = item['params']
         expect = item['expect']
         compare = item['compare']
         flag = item['flag']
         data = None
         if(flag == 1):
             #print params
             h = httpclientLib(ip_port, url, method=method, params=params)
             status,data = h.request()
             '''print json.dumps(data, ensure_ascii=False)
             print data
             print expect'''
             try:
                 logging.info("****************" + desc + "****************")
                 logging.info(json.dumps(data, ensure_ascii=False))
                 logging.info(json.dumps(expect, ensure_ascii=False))
                 if(compare == 1):
                     if(data['data'] == expect['data']):
                         monitor_result[interface] = {"status":0,"msg":"ok"}
                     else:
                         monitor_result[interface] = {"status":-1,"msg":"expect:\n"+json.dumps(expect, ensure_ascii=False)+"\ndata:\n"+json.dumps(data, ensure_ascii=False)}
                 else:
                     if(data['errno'] == 0):
                         monitor_result[interface] = {"status":0,"msg":"ok"}
                     else:
                         monitor_result[interface] = {"status":-1,"msg":"errno not 0:\n"+json.dumps(data, ensure_ascii=False)}
             except Exception as e:
                 monitor_result[interface] = {"status":-1,"msg":"response data error"}
     #print monitor_result
     logging.info(json.dumps(monitor_result))
     total = 0
     normal = 0
     exception = 0
     for item in monitor_result:
         total += 1
         if(monitor_result[item]['status'] == 0):
             normal += 1
         else:
             exception += 1
     mysql = mysqlLib()
     uptime = datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S")
     param = (total, normal, exception, json.dumps(monitor_result), uptime, "TSM")
     mysql.update_tbl_seo(param)
     mysql.close()
     logging.info("task  task_id:" + str(self.last_id) + " monitor_alarm_proc complete")
Exemple #3
0
 SEOMonitor_conf = parse_conf("./SEOMonitor.conf")
 monitor_result = {}
 for item in SEOMonitor_conf:
     desc = item['desc']
     interface = item['interface']
     ip_port = item['ip_port']
     url = item['url']
     method = item['method']
     params = item['params']
     expect = item['expect']
     compare = item['compare']
     flag = item['flag']
     data = None
     if(flag == 1):
         #print params
         h = httpclientLib(ip_port, url, method=method, params=params)
         data = h.request()
         '''print json.dumps(data, ensure_ascii=False)
         print data
         print expect'''
         logging.info("****************" + desc + "****************")
         logging.info(json.dumps(data, ensure_ascii=False))
         logging.info(json.dumps(expect, ensure_ascii=False))
         if(compare == 1):
             if(data['data'] == expect['data']):
                 monitor_result[interface] = {"status":0,"msg":"ok"}
             else:
                 monitor_result[interface] = {"status":-1,"msg":"expect:\n"+json.dumps(expect, ensure_ascii=False)+"\ndata:\n"+json.dumps(data, ensure_ascii=False)}
         else:
             if(data['errno'] == 0):
                 monitor_result[interface] = {"status":0,"msg":"ok"}