Ejemplo n.º 1
0
def client_configs(request,client_id):
    print("--->",client_id)
    config_obj = ClientHandler(client_id)
    config = config_obj.fetch_configs()

    if config:
        return HttpResponse(json.dumps(config))
Ejemplo n.º 2
0
def client_configs(request,client_id):
    print("--->",client_id)
    config_obj = ClientHandler(client_id)
    config = config_obj.fetch_configs()

    if config:
        return HttpResponse(json.dumps(config))
Ejemplo n.º 3
0
def client_config(request):

    config_obj = ClientHandler()
    config = config_obj.fetch_host_configs()

    if config:
        return HttpResponse(json.dumps(config))
Ejemplo n.º 4
0
def client_config(request, client_id):
    """
    向服务端提供配置信息
    :param request:
    :param client_id:
    :return:
    """
    config_obj = ClientHandler(client_id)
    config = config_obj.fetch_configs()

    if config:
        return HttpResponse(json.dumps(config))
Ejemplo n.º 5
0
def client_configs(request, client_id):
    """
    发送监控配置给客户端
    :param request:
    :param client_id:
    :return:
    """
    config_obj = ClientHandler(client_id)  # 实例化一个客户端处理对象,并传入主机ID
    config = config_obj.fetch_configs()  # 抓取主机和主机组对应的服务

    if config:  # 不为空则返回
        return HttpResponse(json.dumps(config))
Ejemplo n.º 6
0
def service_report(request):
    print("client data:",request.POST)

    if request.method == 'POST':
        #REDIS_OBJ.set("test_alex",'hahaha')
        try:
            print('host=%s, service=%s' %(request.POST.get('plugin_name'),request.POST.get('service_name') ) )
            report_data = json.loads(request.POST['data'])
            #print(data)
            #StatusData_1_memory_latest
            service_name = request.POST.get('service_name')

            config_obj = ClientHandler(service_name,data=report_data)
            report = config_obj.report_data()
            if report == 'OK':
                return HttpResponse('上传成功。。')

        except IndexError as e:
            print('----->err:',e)
            return HttpResponse('上传失败。。')


    return HttpResponse(json.dumps(report_data))
Ejemplo n.º 7
0
def host_detail_old(request, host_id):
    host_obj = models.Host.objects.get(id=host_id)

    config_obj = ClientHandler(host_obj.id)
    monitored_services = {
        "services": {},
        "sub_services": {}  #存储一个服务有好几个独立子服务 的监控,比如网卡服务 有好几个网卡
    }

    template_list = list(host_obj.templates.select_related())

    for host_group in host_obj.host_groups.select_related():
        template_list.extend(host_group.templates.select_related())
    print(template_list)
    for template in template_list:
        #print(template.services.select_related())

        for service in template.services.select_related():  #loop each service
            print(service)
            if not service.has_sub_service:
                monitored_services['services'][service.name] = [
                    service.plugin_name, service.interval
                ]
            else:
                monitored_services['sub_services'][service.name] = []

                #get last point from redis in order to acquire the sub-service-key
                last_data_point_key = "StatusData_%s_%s_latest" % (
                    host_obj.id, service.name)
                last_point_from_redis = REDIS_OBJ.lrange(
                    last_data_point_key, -1, -1)[0]
                if last_point_from_redis:
                    data, data_save_time = json.loads(last_point_from_redis)
                    if data:
                        service_data_dic = data.get('data')
                        for serivce_key, val in service_data_dic.items():
                            monitored_services['sub_services'][
                                service.name].append(serivce_key)

    return render(request, 'host_detail.html', {
        'host_obj': host_obj,
        'monitored_services': monitored_services
    })
Ejemplo n.º 8
0
def client_configs(request, client_id):
    print('ID', client_id, "\033[44;1m 获取了监控服务配置项 \033[0m")
    config_obj = ClientHandler(client_id)
    config = config_obj.fetch_configs()
    if config:
        return HttpResponse(json.dumps(config))