Exemple #1
0
def resource_server_collection():
    # 1、接收传过来的主机数据
    # 2 更新数据
    # 3 插入数据
    if request.method == "POST":
	data = dict(request.form)
	data['check_update_time'] = time.strftime("%Y-%m-%d %H:%M:%S", time.localtime(time.time()))
	print data
	ret = api_action("server.update", {"where":{'uuid': data['uuid']}, 'data': data})
	print ret
	if int(ret) == 0:
	    api_action("server.create", data)
        return "成功更新"
Exemple #2
0
def init_cmdb():
    # 取host (在server表里)
    hosts = api_action("server.get")
    for h in hosts:
        data = {"cmdb_hostid": h["id"]}
        db.session.query(ZbHost).filter_by(ip=h["inner_ip"]).update(data)
    db.session.commit()
Exemple #3
0
def maintenance_del(id=None):
    try:
        hostlist = []
        from app.common.zabbix import zabbix_server
        from app.common.zabbix import get_maintenance
        id = request.args.get("id")
        data = Maintenance.query.filter(Maintenance.id == id).first()
        hostname = data.hostname
        ret = zabbix_server.get_hosts()
        for host in ret:
            if hostname == host["host"]:
                hostids = host["hostid"]
                ret = get_maintenance(hostids)
                maintenanceid = ret[0]['maintenanceid']
                ret = zabbix_server.del_maintenance([maintenanceid])
                result_data = zabbix_server.host_status(hostid=hostids,
                                                        status="0")
                print result_data
                try:
                    db.session.query(Maintenance).filter_by(id=id).delete()
                    db.session.commit()
                except Exception, e:
                    raise e.message
                servers = api_action("server.get", {"output": ["hostname"]})
                data = Maintenance.query.all()
                return render_template("monitor/zabbix_maintenance.html",
                                       hostlist=servers,
                                       data=data)
        return "200"
Exemple #4
0
def resource_server_cabinet_doadd():
    ret = api_action("cabinet.create", dict(request.form))
    print ret
    if str(ret).isdigit():
        return "操作成功"
    else:
        return ret
Exemple #5
0
def resource_server_idc_doadd():
    data = dict(request.form)
    ret = api_action("idc.create", data)
    if str(ret).isdigit():
        return "操作成功"
    else:
        return "操作失败"
Exemple #6
0
def maintenance_del(id=None):
    try:
        hostlist = []
        from app.common.zabbix import zabbix_server 
        from app.common.zabbix import get_maintenance
        id = request.args.get("id")
        data = Maintenance.query.filter(Maintenance.id == id).first()  
        hostname = data.hostname  
        ret = zabbix_server.get_hosts()
        for host in ret:
	    if hostname == host["host"]:
	        hostids=host["hostid"]
	        ret = get_maintenance(hostids)
                maintenanceid = ret[0]['maintenanceid']
                ret = zabbix_server.del_maintenance([maintenanceid])
		result_data = zabbix_server.host_status(hostid=hostids, status="0")
		print result_data
		try: 
	            db.session.query(Maintenance).filter_by(id=id).delete()
                    db.session.commit()	
		except Exception,e:
		    raise e.message
	        servers = api_action("server.get",{"output":["hostname"]})
                data = Maintenance.query.all()
	        return render_template("monitor/zabbix_maintenance.html",hostlist=servers,data=data) 
        return "200"
Exemple #7
0
def resource_server_doadd():
    print dict(request.form)
    ret = api_action("server.create", dict(request.form))
    if str(ret).isdigit():
        return "操作成功"
    else:
        return "操作失败"
Exemple #8
0
def resource_server_idc_doadd():
    data = dict(request.form)
    ret = api_action("idc.create", data)
    if str(ret).isdigit():
        return "操作成功"
    else:
        return "操作失败"
Exemple #9
0
def get_zabbix_maintenance():
    hostlist = []
    servers = api_action("server.get", {"output": ["hostname"]})
    data = Maintenance.query.all()
    return render_template("monitor/zabbix_maintenance.html",
                           hostlist=servers,
                           data=data)
Exemple #10
0
def resource_server_cabinet_doadd():
    ret = api_action("cabinet.create", dict(request.form))
    print ret
    if str(ret).isdigit():
        return "操作成功"
    else:
        return ret
Exemple #11
0
def resource_server_doadd():
    print dict(request.form)
    ret = api_action("server.create", dict(request.form))
    if str(ret).isdigit():
        return "操作成功"
    else:
        return "操作失败"
Exemple #12
0
def resource_ajax_get_product():
    if request.method == 'GET':
        pid = int(request.args.get('pid',0))
        if pid:
            servertypes = api_action("product.get",{"output": ["id", "service_name", "pid"]})
            ret = [item for item in servertypes if item['pid'] == pid]
            return json.dumps(ret)
    return ""
Exemple #13
0
def resource_ajax_get_servertype():
    if request.method == 'GET':
        manufacturers_id = int(request.args.get('manufacturers_id',0))
        if manufacturers_id:
            servertypes = api_action("servertype.get",{})
            ret = [item for item in servertypes if item['manufacturers_id'] == manufacturers_id]
            return json.dumps(ret)
    return ""
Exemple #14
0
def get_zabbix_data_by_group():
    from app.common.zabbix import get_zabbix_data, init_zbhost
    #init_zbhost()
    params = dict(request.form) #{'server_purpose':[u'4'], 'service_id':[u'1']}
    hosts = api_action('server.get', {"output": ['id'],
                              'where': {"server_purpose":params['server_purpose'][0], 'service_id':params['service_id'][0]}})
    ret = get_zabbix_data(hosts)
    return json.dumps(ret)
Exemple #15
0
def resource_ajax_get_cabinet():
    if request.method == 'GET':
        idc_id = request.args.get('idc_id',0)
        if idc_id:
            cabinets = api_action("cabinet.get", {"output":['id', 'name', "idc_id"]})
            ret = [item for item in cabinets if item['idc_id'] == idc_id]
            return json.dumps(ret)
    return ''
Exemple #16
0
def init_cmdb():
    #取出host(server表中)
    hosts = api_action('server.get')
    #更新到cache表
    for h in hosts:
        data = {'cmdb_hostid': h['id']}
        db.session.query(ZbHost).filter_by(ip=h['inner_ip']).update(data)

    db.session.commit()
Exemple #17
0
def resource_ajax_get_product():
    if request.method == 'GET':
        pid = int(request.args.get('pid', 0))
        if pid:
            servertypes = api_action("product.get",
                                     {"output": ["id", "service_name", "pid"]})
            ret = [item for item in servertypes if item['pid'] == pid]
            return json.dumps(ret)
    return ""
Exemple #18
0
def init_cmdb():
    #取出host(server表中)
    hosts = api_action('server.get')
    #更新到cache表
    for h in hosts:
        data = {'cmdb_hostid':h['id']}
        db.session.query(ZbHost).filter_by(ip=h['inner_ip']).update(data)

    db.session.commit()
Exemple #19
0
def resource_ajax_get_cabinet():
    if request.method == 'GET':
        idc_id = request.args.get('idc_id', 0)
        if idc_id:
            cabinets = api_action("cabinet.get",
                                  {"output": ['id', 'name', "idc_id"]})
            ret = [item for item in cabinets if item['idc_id'] == idc_id]
            return json.dumps(ret)
    return ''
Exemple #20
0
def resource_server_sysinfo():
    data = request.json
    print data
    ret = api_action("server.create", data) 
#    if str(ret).isdigit():
#        return "操作成功"
#    else:
#        return "操作失败"
    print ret
    return "1"
Exemple #21
0
def del_host_from_group():
    data = dict(request.form)
    server_id = data['id'][0]
    ret = api_action("server.update",{"where":{"id": server_id},"data":{
        "server_purpose": None,
        "service_id": None
	}})
    if ret == 1:
	return str(ret)
    return "500"
Exemple #22
0
def resource_server_collection():
    # 1、接收传过来的主机数据
    # 2 更新数据
    # 3 插入数据
    if request.method == "POST":
        data = dict(request.form)
        data['check_update_time'] = time.strftime("%Y-%m-%d %H:%M:%S",
                                                  time.localtime(time.time()))
        print data
        ret = api_action("server.update", {
            "where": {
                'uuid': data['uuid']
            },
            'data': data
        })
        print ret
        if int(ret) == 0:
            api_action("server.create", data)
        return "成功更新"
Exemple #23
0
def resource_server_sysinfo():
    data = request.json
    print data
    ret = api_action("server.create", data)
    #    if str(ret).isdigit():
    #        return "操作成功"
    #    else:
    #        return "操作失败"
    print ret
    return "1"
Exemple #24
0
def get_hosts_bygroup():
    data = dict(request.form)
    where = {
        "server_purpose": data['server_purpose'][0],
        "service_id": data['service_id'][0],
    }
    ret = api_action("server.get", {"where": where})
    hosts = []
    for r in ret:
        hosts.append({"value": r['id'], "text": r['hostname']})
    return json.dumps(hosts)
Exemple #25
0
def get_hosts_bygroup():
    data = dict(request.form)
    where = {
	"server_purpose": data['server_purpose'][0],
        "service_id": data['service_id'][0],
	}
    ret = api_action("server.get",{"where":where})
    hosts = []
    for r in ret:
	hosts.append({"value": r['id'], "text": r['hostname']})
    return json.dumps(hosts)
Exemple #26
0
def resource_ajax_get_servertype():
    if request.method == 'GET':
        manufacturers_id = int(request.args.get('manufacturers_id', 0))
        if manufacturers_id:
            servertypes = api_action("servertype.get", {})
            ret = [
                item for item in servertypes
                if item['manufacturers_id'] == manufacturers_id
            ]
            return json.dumps(ret)
    return ""
Exemple #27
0
def resource_server_group():
    #获取所有的主机
    #    import app.common.monitor
    servers = api_action("server.get", {})
    host = []
    for s in servers:
        if not s['service_id'] and not s['server_purpose']:
            host.append({"value": s['id'], "text": s['hostname']})
    treeview = app.common.monitor.get_treeview_data(idc=False)
    #    print treeview
    return render_template("resource/server_hostgroup.html",
                           treeview=json.dumps(treeview),
                           host=json.dumps(host))
Exemple #28
0
def resource_server_group():
    #获取所有的主机
#    import app.common.monitor
    servers = api_action("server.get",{})
    host = []
    for s in servers:
	if not s['service_id'] and not s['server_purpose']:
	    host.append({"value":s['id'],"text": s['hostname']}) 
    treeview = app.common.monitor.get_treeview_data(idc=False)
#    print treeview 
    return render_template("resource/server_hostgroup.html",
			   treeview=json.dumps(treeview),
			   host=json.dumps(host))
Exemple #29
0
def get_zabbix_data_by_group():
    from app.common.zabbix import get_zabbix_data, init
    init()
    params = dict(request.form)
    hosts = api_action(
        "server.get", {
            "output": ["id"],
            "where": {
                "server_purpose": params["server_purpose"][0],
                "service_id": params["service_id"][0]
            }
        })
    ret = get_zabbix_data(hosts)
    return json.dumps(ret)
Exemple #30
0
def get_zabbix_data_by_group():
    from app.common.zabbix import get_zabbix_data, init
    init()
    params = dict(request.form)
    hosts = api_action(
        'server.get', {
            'output': ['id'],
            'where': {
                'server_purpose': params['server_purpose'][0],
                'service_id': params['service_id'][0]
            }
        })
    ret = get_zabbix_data(hosts)
    return json.dumps(ret)
Exemple #31
0
def host_to_hostgroup():
    params = dict(request.form)
    print params
    where = {'id':params['id'][0]}
    data = {
	"server_purpose": params['server_purpose'][0],
	"service_id": params['service_id'][0],
	"check_update_time": time.strftime("%Y-%m-%d %H:%I:%S", time.localtime(time.time()))
     }
    print data
    ret = api_action("server.update",{"where":where,"data": data})
    if ret == 1:
	return str(ret)
    return "500"
Exemple #32
0
def get_zabbix_data_by_group():
    from app.common.zabbix import get_zabbix_data, init

    init()
    params = dict(request.form)
    hosts = api_action(
        "server.get",
        {
            "output": ["id"],
            "where": {"server_purpose": params["server_purpose"][0], "service_id": params["service_id"][0]},
        },
    )
    ret = get_zabbix_data(hosts)
    return json.dumps(ret)
Exemple #33
0
def del_host_from_group():
    data = dict(request.form)
    server_id = data['id'][0]
    ret = api_action(
        "server.update", {
            "where": {
                "id": server_id
            },
            "data": {
                "server_purpose": None,
                "service_id": None
            }
        })
    if ret == 1:
        return str(ret)
    return "500"
Exemple #34
0
def host_to_hostgroup():
    params = dict(request.form)
    print params
    where = {'id': params['id'][0]}
    data = {
        "server_purpose":
        params['server_purpose'][0],
        "service_id":
        params['service_id'][0],
        "check_update_time":
        time.strftime("%Y-%m-%d %H:%I:%S", time.localtime(time.time()))
    }
    print data
    ret = api_action("server.update", {"where": where, "data": data})
    if ret == 1:
        return str(ret)
    return "500"
Exemple #35
0
def resource_server_managementcardtype_doadd():
    ret = api_action("managementcardtype.create", dict(request.form))
    if str(ret).isdigit():
        return "操作成功"
    else:
        return ret
Exemple #36
0
def resource_server_cabinet_add():
    idcs = api_action("idc.get", {"output": ['id', 'name']})
    powers = api_action("power.get")
    return render_template("resource/server_add_cabinet.html",
                           idcs=idcs,
                           powers=powers)
Exemple #37
0
def resource_server_raid_doadd():
    ret = api_action("raid.create", dict(request.form))
    if str(ret).isdigit():
        return "操作成功"
    else:
        return ret
Exemple #38
0
def resource_server_asses():
    servers = api_action("server.get")
    return render_template("resource/server_asses.html", servers=servers)
Exemple #39
0
    def __init__(self):
	self.idc_info = api_action("idc.get",{"output":["id","name"]})
	self.product_info = api_action("product.get",{"output":["id","module_letter","pid"]})
	self.data = []
Exemple #40
0
                ret = zabbix_server.del_maintenance([maintenanceid])
                result_data = zabbix_server.host_status(hostid=hostids,
                                                        status="0")
                print result_data
                try:
                    db.session.query(Maintenance).filter_by(id=id).delete()
                    db.session.commit()
                except Exception, e:
                    raise e.message
                servers = api_action("server.get", {"output": ["hostname"]})
                data = Maintenance.query.all()
                return render_template("monitor/zabbix_maintenance.html",
                                       hostlist=servers,
                                       data=data)
        return "200"
    except:
        servers = api_action("server.get", {"output": ["hostname"]})
        data = Maintenance.query.all()
        return render_template("monitor/zabbix_maintenance.html",
                               hostlist=servers,
                               data=data)


@main.route("/get_alerts", methods=["GET"])
def zabbix_alerts_get():
    from app.common.zabbix import get_alerts
    data = {"output": "extend", "actionids": 7}
    ret = zabbix_server.get_alerts(data)
    print ret
    return ""
Exemple #41
0
def get_zabbix_maintenance():
    hostlist = []
    servers = api_action("server.get",{"output":["hostname"]})
    data = Maintenance.query.all()
    return render_template("monitor/zabbix_maintenance.html",hostlist=servers,data=data)
Exemple #42
0
def resource_server_product_add():
    ret = api_action("product.get")
    product = [item for item in ret if item['pid'] == 0]
    return render_template("resource/server_add_product.html",
                           products=product)
Exemple #43
0
def resource_server_raid_doadd():
    ret = api_action("raid.create", dict(request.form))
    if str(ret).isdigit():
        return "操作成功"
    else:
        return ret
Exemple #44
0
def resource_server_cabinet_add():
    idcs = api_action("idc.get", {"output":['id', 'name']})
    powers = api_action("power.get")
    return render_template("resource/server_add_cabinet.html",
                           idcs = idcs,
                           powers = powers)
Exemple #45
0
def resource_server_product_add():
    ret = api_action("product.get")
    product = [item for item in ret if item['pid'] == 0]
    return render_template("resource/server_add_product.html",
                           products = product)
Exemple #46
0
def resource_server_servertype_add():
    manufacturers = api_action("manufacturers.get", {"outout":["id", "name"]})
    return render_template("resource/server_add_servertype.html",
                           manufacturers=manufacturers)
Exemple #47
0
def resource_server_manufacturers_doadd():
    ret = api_action("manufacturers.create", dict(request.form))
    if str(ret).isdigit():
        return "操作成功"
    else:
        return "操作失败"
Exemple #48
0
def resource_server_servertype_add():
    manufacturers = api_action("manufacturers.get", {"outout": ["id", "name"]})
    return render_template("resource/server_add_servertype.html",
                           manufacturers=manufacturers)
Exemple #49
0
def resource_server_asses():
    servers = api_action("server.get")
    return render_template("resource/server_asses.html",
                           servers=servers)
Exemple #50
0
def resource_server_manufacturers_doadd():
    ret = api_action("manufacturers.create", dict(request.form))
    if str(ret).isdigit():
        return "操作成功"
    else:
        return "操作失败"
Exemple #51
0
def resource_server_add():
    # 获取idc信息
    idc_info = api_action("idc.get", {"output": ['name', 'id']})
    status = api_action("status.get", {"outout": ["id", "name"]})
    servertype = api_action("servertype.get", {"outout": ["id", "type"]})
    cabinet = api_action("cabinet.get", {"outout": ["id", "name"]})
    manufacturers = api_action("manufacturers.get", {"outout": ["id", "name"]})
    ret = api_action("product.get", {"output": ["id", "service_name", "pid"]})
    product = [item for item in ret if item['pid'] == 0]
    powers = api_action("power.get")
    raids = api_action("raid.get")
    raidtype = api_action("raidtype.get")
    managementcardtype = api_action("managementcardtype.get")
    supplier = api_action("supplier.get")
    return render_template("resource/server_add.html",
                           idc_info=idc_info,
                           status=status,
                           manufacturers=manufacturers,
                           products=product,
                           powers=powers,
                           raids=raids,
                           raidtypes=raidtype,
                           managementcardtypes=managementcardtype,
                           suppliers=supplier,
                           servertype=servertype,
                           cabinets=cabinet)
Exemple #52
0
 def __init__(self):
     self.idc_info = api_action('idc.get', {'output': ['id', 'name']})
     self.product_info = api_action(
         'product.get', {'output': ['id', 'module_letter', 'pid']})
Exemple #53
0
def resource_server_managementcardtype_doadd():
    ret = api_action("managementcardtype.create", dict(request.form))
    if str(ret).isdigit():
        return "操作成功"
    else:
        return ret
Exemple #54
0
def resource_server_add():
    # 获取idc信息
    idc_info = api_action("idc.get", {"output": ['name', 'id']})
    status = api_action("status.get", {"outout":["id", "name"]})
    servertype = api_action("servertype.get", {"outout":["id", "type"]})
    cabinet = api_action("cabinet.get", {"outout":["id", "name"]})
    manufacturers = api_action("manufacturers.get", {"outout":["id", "name"]})
    ret = api_action("product.get", {"output":["id","service_name", "pid"]})
    product = [item for item in ret if item['pid'] == 0]
    powers = api_action("power.get")
    raids = api_action("raid.get")
    raidtype = api_action("raidtype.get")
    managementcardtype = api_action("managementcardtype.get")
    supplier = api_action("supplier.get")
    return render_template("resource/server_add.html",
                           idc_info=idc_info,
                           status = status,
                           manufacturers = manufacturers,
                           products = product,
                           powers = powers,
                           raids = raids,
                           raidtypes = raidtype,
                           managementcardtypes = managementcardtype,
                           suppliers = supplier,
			   servertype = servertype,
			   cabinets = cabinet)
Exemple #55
0
	        hostids=host["hostid"]
	        ret = get_maintenance(hostids)
                maintenanceid = ret[0]['maintenanceid']
                ret = zabbix_server.del_maintenance([maintenanceid])
		result_data = zabbix_server.host_status(hostid=hostids, status="0")
		print result_data
		try: 
	            db.session.query(Maintenance).filter_by(id=id).delete()
                    db.session.commit()	
		except Exception,e:
		    raise e.message
	        servers = api_action("server.get",{"output":["hostname"]})
                data = Maintenance.query.all()
	        return render_template("monitor/zabbix_maintenance.html",hostlist=servers,data=data) 
        return "200"
    except:
	servers = api_action("server.get",{"output":["hostname"]})
        data = Maintenance.query.all()
	return render_template("monitor/zabbix_maintenance.html",hostlist=servers,data=data)

@main.route("/get_alerts", methods=["GET"])
def zabbix_alerts_get():
    from app.common.zabbix import get_alerts
    data = {
        "output": "extend",
        "actionids": 7
    }
    ret = zabbix_server.get_alerts(data)
    print ret
    return ""