def get(self, *args, **kwargs): key = self.get_argument('key', default=None, strip=True) value = self.get_argument('value', default=None, strip=True) page_size = self.get_argument('page', default=1, strip=True) limit = self.get_argument('limit', default=15, strip=True) limit_start = (int(page_size) - 1) * int(limit) event_record_list = [] with DBContext('w') as session: if key and value: count = session.query(EventRecord).filter_by(**{ key: value }).count() event_record_data = session.query(EventRecord).filter_by( **{ key: value }).order_by(EventRecord.id).offset(limit_start).limit( int(limit)) else: count = session.query(EventRecord).count() event_record_data = session.query(EventRecord).order_by( EventRecord.id).offset(limit_start).limit(int(limit)) for data in event_record_data: data_dict = model_to_dict(data) data_dict['event_start_time'] = str(data_dict['event_start_time']) data_dict['event_end_time'] = str(data_dict['event_end_time']) data_dict['create_at'] = str(data_dict['create_at']) data_dict['update_at'] = str(data_dict['update_at']) event_record_list.append(data_dict) return self.write( dict(code=0, msg='获取成功', count=count, data=event_record_list))
def get(self, *args, **kwargs): zabbix_url = self.get_argument('zabbix_url', default=None, strip=True) group_name = self.get_argument('group_name', default=None, strip=True) search_val = self.get_argument('search_val', default=None, strip=True) host_list = [] if search_val: with DBContext('w') as session: zabbix_host_info = session.query(ZabbixHosts).filter( or_(ZabbixHosts.group_name.like('%{}%'.format(search_val)), ZabbixHosts.host_name.like('%{}%'.format(search_val)), ZabbixHosts.zabbix_url.like('%{}%'.format(search_val))) ).order_by(ZabbixHosts.zabbix_url, ZabbixHosts.group_name).all() elif zabbix_url and group_name: with DBContext('w') as session: zabbix_host_info = session.query(ZabbixHosts).filter(ZabbixHosts.zabbix_url == zabbix_url, ZabbixHosts.group_name == group_name).order_by( ZabbixHosts.zabbix_url, ZabbixHosts.group_name).all() else: with DBContext('w') as session: zabbix_host_info = session.query(ZabbixHosts).order_by(ZabbixHosts.zabbix_url, ZabbixHosts.group_name).all() for msg in zabbix_host_info: data_dict = model_to_dict(msg) hook_list = [] if data_dict['zabbix_hooks']: git_hooks = json.loads(data_dict['zabbix_hooks']) for k, v in git_hooks.items(): v['alert_title'] = k hook_list.append(v) data_dict['hook_list'] = hook_list host_list.append(data_dict) return self.write(dict(code=0, msg='获取成功', data=host_list))
def get(self, *args, **kwargs): key = self.get_argument('key', default=None, strip=True) value = self.get_argument('value', default=None, strip=True) page_size = self.get_argument('page', default=1, strip=True) limit = self.get_argument('limit', default=15, strip=True) limit_start = (int(page_size) - 1) * int(limit) zabbix_list = [] with DBContext('w') as session: if key and value: count = session.query(ZabbixConfig).filter_by(**{ key: value }).count() zabbix_data = session.query(ZabbixConfig).filter_by(**{ key: value }).order_by(ZabbixConfig.id).offset(limit_start).limit( int(limit)) else: count = session.query(ZabbixConfig).count() zabbix_data = session.query(ZabbixConfig).order_by( ZabbixConfig.id).offset(limit_start).limit(int(limit)) for data in zabbix_data: data_dict = model_to_dict(data) zabbix_list.append(data_dict) return self.write( dict(code=0, msg='获取成功', count=count, data=zabbix_list))
def get_remind_data(self): remind_list = [] remind_data = db_session.query(remindModels).all() for data in remind_data: data_dict = model_to_dict(data) if data_dict['remind_email']: data_dict['remind_email'] = data_dict['remind_email'].split(',') remind_list.append(data_dict) return remind_list
def get(self, *args, **kwargs): page_size = self.get_argument('page', default=1, strip=True) limit = self.get_argument('limit', default=1, strip=True) limit_start = (int(page_size) - 1) * int(limit) # 只能有一条 submit_task_conf_list = [] with DBContext('w') as session: zabbix_submit_task_conf_data = session.query(ZabbixSubmitTaskConf).order_by(ZabbixSubmitTaskConf.id).offset( limit_start).limit(int(limit)) for data in zabbix_submit_task_conf_data: data_dict = model_to_dict(data) submit_task_conf_list.append(data_dict) return self.write(dict(code=0, msg='获取成功', data=submit_task_conf_list))
def get(self, *args, **kwargs): log_list = [] with DBContext('w') as session: hooks_log_info = session.query(ZabbixHookLog).order_by(-ZabbixHookLog.id).limit(200).all() for msg in hooks_log_info: data_dict = model_to_dict(msg) data_dict['create_time'] = str(data_dict['create_time']) log_list.append(data_dict) return self.write(dict(code=0, msg='获取成功', data=log_list))
def get(self, *args, **kwargs): hosts_list = [] with DBContext('w') as session: hosts_info = session.query(ZabbixHosts).all() for msg in hosts_info: data_dict = model_to_dict(msg) hosts_list.append(data_dict) _tree = [{ "expand": True, "title": "ZABBIX", "children": [], "data_type": 'root' }] if hosts_list: tmp_tree = { "zabbix_url": {}, "group_name": {}, } for t in hosts_list: zabbix_url, group_name = t["zabbix_url"], t['group_name'] # 因为是第一层所以没有parent tmp_tree["zabbix_url"][zabbix_url] = { "expand": True, "title": zabbix_url, "parent": "ZABBIX", "children": [], "data_type": 'zabbix_url' } tmp_tree["group_name"][zabbix_url + "|" + group_name] = { "expand": False, "title": group_name, "parent": zabbix_url, "zabbix_url": zabbix_url, "children": [], "data_type": 'group_name' } for tmp_group in tmp_tree["group_name"].values(): tmp_tree["zabbix_url"][tmp_group["parent"]]["children"].append( tmp_group) for tmp_zabbix in tmp_tree["zabbix_url"].values(): _tree[0]["children"].append(tmp_zabbix) return self.write(dict(code=0, msg='获取项目Tree成功', data=_tree)) else: return self.write(dict(code=0, msg='获取项目Tree失败', data=_tree))
def get_alert_info(): """ 获取alert报警配置信息 :return: """ alert_list = [] tornado_alert = db_session.query(PrometheusAlert).all() for data in tornado_alert: data_dict = model_to_dict(data) data_dict['create_at'] = str(data_dict['create_at']) data_dict['update_at'] = str(data_dict['update_at']) alert_list.append(data_dict) return alert_list
def get_paid_info(): """ 获取付费管理信息 :return: """ paid_list = [] paid_data = db_session.query(PaidMG).all() db_session.close() for data in paid_data: data_dict = model_to_dict(data) data_dict['paid_start_time'] = str(data_dict['paid_start_time']) data_dict['paid_end_time'] = str(data_dict['paid_end_time']) data_dict['create_at'] = str(data_dict['create_at']) data_dict['update_at'] = str(data_dict['update_at']) paid_list.append(data_dict) return paid_list
def get(self, *args, **kwargs): key = self.get_argument('key', default=None, strip=True) page_size = self.get_argument('page', default=1, strip=True) limit = self.get_argument('limit', default="13", strip=True) limit_start = (int(page_size) - 1) * int(limit) remind_list = [] print(key, page_size, limit) with DBContext('w') as session: if key: count = session.query(remindModels).filter( or_( remindModels.remind_name.like('%{}%'.format(key)), remindModels.remind_content.like('%{}%'.format(key)), remindModels.remind_day.like('%{}%'.format(key)), remindModels.remind_method.like('%{}%'.format(key)), remindModels.remind_type.like('%{}%'.format(key)), remindModels.remind_email.like('%{}%'.format(key)), remindModels.webhook_addr.like('%{}%'.format(key)), )).count() remind_data = session.query(remindModels).filter( or_( remindModels.remind_name.like('%{}%'.format(key)), remindModels.remind_content.like('%{}%'.format(key)), remindModels.remind_day.like('%{}%'.format(key)), remindModels.remind_method.like('%{}%'.format(key)), remindModels.remind_type.like('%{}%'.format(key)), remindModels.webhook_addr.like('%{}%'.format(key)), remindModels.remind_email.like('%{}%'.format(key)), )) else: count = session.query(remindModels).count() # remind_data = session.query(remindModels).order_by(remindModels.id).all() remind_data = session.query(remindModels).offset( limit_start).limit(int(limit)) for data in remind_data: data_dict = model_to_dict(data) data_dict['remind_time'] = str(data_dict['remind_time']) if data_dict['remind_email']: data_dict['remind_email'] = data_dict[ 'remind_email'].split(',') remind_list.append(data_dict) return self.write( dict(code=0, msg='获取成功', count=count, data=remind_list))
def get(self, *args, **kwargs): key = self.get_argument('key', default=None, strip=True) value = self.get_argument('value', default=None, strip=True) project_list = [] with DBContext('w') as session: if key and value: alert_data = session.query(PrometheusAlert).filter_by( **{ key: value }).all() else: alert_data = session.query(PrometheusAlert).all() for data in alert_data: data_dict = model_to_dict(data) data_dict['create_at'] = str(data_dict['create_at']) data_dict['update_at'] = str(data_dict['update_at']) project_list.append(data_dict) return self.write(dict(code=0, msg='获取成功', data=project_list))