예제 #1
0
파일: views.py 프로젝트: JummyWu/paleluan
def accounts_user(request):
    data = {}
    user = User.objects.order_by('id')
    data = paginator(request, user)
    request.breadcrumbs((('首页', '/'), ('用户管理', reverse('accounts_user'))))

    return render_to_response('accounts/user/user.html', data)
예제 #2
0
파일: views.py 프로젝트: JummyWu/paleluan
def server_idc(request):
    data = {}
    server = IDC.objects.order_by('id')
    data = paginator(request, server)
    request.breadcrumbs((('首页', '/'), ('IDC列表', reverse('server_idc'))))

    return render_to_response('cmdb/idc.html', data)
예제 #3
0
def monitor_list(request):
    server = Server.objects.order_by('id')
    platforms = Platform.objects.values_list('id', 'name')

    offline = Server.objects.values('status').filter(status='False').count()
    online = Server.objects.values('status').filter(status='True').count()

    monitors = Server.objects.values_list('id', 'mem_rate', 'disk_rate', 'swap_rate')

    mem_warn, disk_warn, swap_warn = 0, 0, 0
    for i in monitors:
        if i[1] or i[2] or i[3] is not None:
            if float(i[1]) > 80:
                mem_warn += 1
            elif float(i[2]) > 80:
                disk_warn += 1
            elif float(i[3]) > 80:
                swap_warn += 1
        else:
            print('Server ID: ' + str(i[0]) + ' 资源信息为空')

    data = paginator(request, server)

    request.breadcrumbs((('首页', '/'), ('监控详情', reverse('monitor_list'))))

    data['monitors'] = json.dumps([(i[0], i[1], i[2], i[3]) for i in monitors])
    data['platforms'] = json.dumps([(i[0], i[1]) for i in platforms])
    data['online'] = online
    data['offline'] = offline
    data['mem_warn'] = mem_warn
    data['disk_warn'] = disk_warn
    data['swap_warn'] = swap_warn

    return render_to_response('monitor/server.html', data)
예제 #4
0
def server_list(request):
    data = {}
    # if request.method == "POST":
    #     form = IDCForm(request.POST)
    # else:

    form = ServerForm()
    # server = Server.objects.order_by('id')
    server = Server.objects.order_by('id')
    groups = ServerGroup.objects.values_list('id', 'name')
    idcs = Idc.objects.values_list('id', 'name')
    apps = AppProject.objects.values_list('id', 'app_name_cn', 'app_name_en')
    users = SystemUser.objects.values_list('id', 'name', 'username')

    data = paginator(request, server)

    request.breadcrumbs((('首页', '/'), ('资产列表', reverse('server_list'))))

    data['groups'] = json.dumps([(i[0], i[1]) for i in groups])
    data['idcs'] = json.dumps([(i[0], i[1]) for i in idcs])
    data['apps'] = json.dumps([(i[0], i[1], i[2]) for i in apps])
    data['users'] = json.dumps([(i[0], i[1], i[2]) for i in users])
    data['form'] = form

    return render_to_response('cmdb/server.html', data)
예제 #5
0
def system_user_search(request):
    data = {}
    search = request.GET.get("search")
    content = SystemUser.objects.filter(
        Q(name__icontains=search) | Q(username__icontains=search))
    data = paginator(request, content)
    return render_to_response('cmdb/user_table.html', data)
예제 #6
0
def server_group(request):
    group = ServerGroup.objects.annotate(
        average_server=Count('servers')).order_by('id')
    data = paginator(request, group)
    request.breadcrumbs((('首页', '/'), ('资产组列表', reverse('server_group'))))

    return render_to_response('cmdb/group.html', data)
예제 #7
0
파일: views.py 프로젝트: zwunix/OpsPlus
def get_minion_keys(request):

    saltserver = request.GET.get('saltserver')
    data = collections.defaultdict(lambda: collections.defaultdict(list))
    accept_lists = []
    minions = Minions.objects.filter(saltserver=saltserver).order_by('minion')
    for m in minions:
        if m.status == 0:
            accept_lists.append(m)
        if m.status == 1:
            data['unaccept']['lists'].append(m)
        if m.status == 2:
            data['reject']['lists'].append(m)
        if m.status == 3:
            data['denied']['lists'].append(m)

    data['accept']['count'] = len(accept_lists)
    data['unaccept']['count'] = len(data['unaccept']['lists'])
    data['reject']['count'] = len(data['reject']['lists'])
    data['denied']['count'] = len(data['accept']['lists'])
    data['accept']['lists'] = paginator(request, accept_lists, page_number=10)
    request.breadcrumbs((('首页', '/'), ('Salt管理', reverse('salt_info'))))
    return render(request, 'saltapi/salt_keys.html', {
        'request': request,
        'data': data,
        'saltserver': saltserver
    })
예제 #8
0
파일: views.py 프로젝트: JummyWu/paleluan
def server_list(request):
    data = {}
    server = Server.objects.order_by('id')
    data = paginator(request, server)
    request.breadcrumbs((('首页', '/'), ('资产列表', reverse('server_list'))))

    return render_to_response('cmdb/index.html', data)
예제 #9
0
파일: views.py 프로젝트: JummyWu/paleluan
def server_group(request):
    data = {}
    server = ServerGroup.objects.order_by('id')
    data = paginator(request, server)
    request.breadcrumbs((('首页', '/'), ('资产组列表', reverse('server_group'))))

    return render_to_response('cmdb/group.html', data)
예제 #10
0
파일: views.py 프로젝트: zwunix/OpsPlus
def salt_info(request):

    data = {}
    info = Salt.objects.all().order_by('-update_time')
    data = paginator(request, info)
    request.breadcrumbs((('首页', '/'), ('Salt管理', reverse('salt_info'))))

    return render(request, 'saltapi/salt.html', {'data': data})
예제 #11
0
파일: api.py 프로젝트: JummyWu/paleluan
def group_search(request):
    data = {}
    search = request.GET.get("search")
    content = ServerGroup.objects.filter(
        Q(name__icontains=search) | Q(comment__icontains=search)
        | Q(created_by__fullname__icontains=search))
    data = paginator(request, content)
    return render_to_response('cmdb/group_table.html', data)
예제 #12
0
def server_idc(request):
    idc = Idc.objects.annotate(average_server=Count('servers')).order_by('id')
    data = paginator(request, idc)
    request.breadcrumbs((('首页', '/'), ('IDC列表', reverse('server_idc'))))
    if request.method != "POST":
        return render_to_response('cmdb/idc.html', data)
    else:
        return render_to_response('cmdb/server.html', data)
예제 #13
0
파일: views.py 프로젝트: zyzheal/pms
def tools(request):
    obj = toolsscript.objects.order_by('id')
    data = paginator(request, obj)
    request.breadcrumbs(
        (('首页', '/'), ('命令行', reverse('cmd')), ('脚本工具', reverse('tools'))))
    # return render(request, "tasks/tools.html",
    #               {"tools": obj, "tasks_active": "active", "tools_active": "active"})
    return render_to_response('tasks/tools.html', data)
예제 #14
0
def accounts_user(request):

    data = {}
    user = MyUser.objects.all()
    data = paginator(request, user)
    request.breadcrumbs((('首页', '/'), ('用户管理', reverse('user_user'))))

    return render(request, 'accounts/user/user.html', data)
예제 #15
0
def idc_search(request):
    data = {}
    search = request.GET.get("search")
    content = Idc.objects.filter(
        Q(name__icontains=search) | Q(contact__icontains=search)
        | Q(phone__icontains=search) | Q(operator__icontains=search)
        | Q(created_by__fullname__icontains=search))
    data = paginator(request, content)
    return render_to_response('cmdb/idc_table.html', data)
예제 #16
0
def fms_search(request):

    data = {}
    search = request.GET.get("search")
    content = Content.objects.filter(
        Q(title__icontains=search) | Q(type__name__icontains=search)
        | Q(project__name__icontains=search))
    data = paginator(request, content)
    return render_to_response('fms/fms_table.html', data)
예제 #17
0
def idc_search(request):

    data = {}
    search = request.GET.get("search")
    idc = IDC.objects.filter(
        Q(isp__name__icontains=search) | Q(name__icontains=search)
        | Q(contact__icontains=search) | Q(network__icontains=search))
    data = paginator(request, idc)
    return render_to_response('cmdb/idc/idc_table.html', data)
예제 #18
0
파일: views.py 프로젝트: JummyWu/paleluan
def execadd_list(request):

    data = {}
    execfile = ExecFile.objects.order_by('id')

    data = paginator(request, execfile)
    request.breadcrumbs((('首页', '/'), ('exec数据', reverse('execadd_list'))))

    return render_to_response('execadd/index1.html', data)
예제 #19
0
def system_user(request):
    data = {}

    form = SystemUserForm()
    users = SystemUser.objects.order_by('id')
    data = paginator(request, users)
    request.breadcrumbs((('首页', '/'), ('登录用户列表', reverse('system_user'))))

    data['form'] = form
    return render_to_response('cmdb/user.html', data)
예제 #20
0
파일: views.py 프로젝트: JummyWu/paleluan
def fms_list(request):

    data = {}
    content = Content.objects.select_related().all().order_by('-ctime')
    for i in content:
        time_count(i, i.start_time, i.end_time)
    data = paginator(request, content)
    request.breadcrumbs((('首页', '/'), ('故障列表', reverse('fms_list'))))

    return render_to_response('fms/fms.html', data)
예제 #21
0
def accounts_group(request):

    data = {}
    group = Group.objects.all()
    users = MyUser.objects.values_list('id', 'fullname')
    data = paginator(request, group)
    request.breadcrumbs((('首页', '/'), ('用户管理', reverse('accounts_group'))))
    data['users'] = json.dumps([(i[0], "%s" % (i[1])) for i in users])

    return render(request, 'accounts/user/group.html', data)
예제 #22
0
def app_platform(request):

    data = {}
    platform = Platform.objects.annotate(average_app=Count('servers')).order_by('id')
    data = paginator(request, platform)
    request.breadcrumbs((('首页', '/'), ('平台列表', reverse('app_platform'))))
    if request.method != "POST":
        return render_to_response('release/platform.html', data)
    else:
        return render_to_response('release/app.html', data)
예제 #23
0
파일: views.py 프로젝트: JummyWu/paleluan
def accounts_group(request):
    data = {}
    group = Group.objects.order_by('id')
    users = User.objects.values_list('id', 'username', 'fullname')
    data = paginator(request, group)
    request.breadcrumbs((('首页', '/'), ('用户管理', reverse('accounts_group'))))
    data['users'] = json.dumps([(i[0], i[1], "%s(%s)" % (i[1], i[2]))
                                for i in users])

    return render_to_response('accounts/user/group.html', data)
예제 #24
0
파일: api.py 프로젝트: zy0001/fms
def user_search(request):

    data = {}
    search = request.GET.get("search")
    user = User.objects.filter(
        Q(group__name__icontains=search) | Q(username__icontains=search)
        | Q(email__icontains=search) | Q(fullname__icontains=search)
        | Q(mobile__icontains=search))
    data = paginator(request, user)
    return render_to_response('accounts/user/user_table.html', data)
예제 #25
0
파일: api.py 프로젝트: JummyWu/paleluan
def server_search(request):
    data = {}
    search = request.GET.get("search")
    content = Server.objects.filter(
        Q(in_ip__icontains=search) | Q(project_name__icontains=search)
        | Q(service_name__icontains=search) | Q(position__icontains=search)
        | Q(host_name__icontains=search)
        | Q(author__fullname__icontains=search))
    data = paginator(request, content)
    return render_to_response('cmdb/server_table.html', data)
예제 #26
0
def asset_search(request):

    data = {}
    search = request.GET.get("search")
    serverasset = ServerAsset.objects.filter(
        Q(ip__icontains=search) | Q(hostname__icontains=search)
        | Q(idc__name__icontains=search) | Q(ops__fullname__icontains=search)
        | Q(dev__fullname__icontains=search) | Q(salt__name__icontains=search))
    data = paginator(request, serverasset)
    return render_to_response('cmdb/assets/server_table.html', data)
예제 #27
0
파일: api.py 프로젝트: yugw-gb/omms-gy
def platform_search(request):
    data = {}
    search = request.GET.get("search")
    # content = ServerGroup.objects.filter(
    #     Q(name__icontains=search) | Q(comment__icontains=search) | Q(created_by__fullname__icontains=search))
    content = Platform.objects.annotate(average_app=Count('servers')).filter(
        Q(name__icontains=search) | Q(owner__icontains=search)
        | Q(phone__icontains=search))
    data = paginator(request, content)
    return render_to_response('release/platform_table.html', data)
예제 #28
0
def idc_list(request):

    data = {}
    idc = IDC.objects.all().order_by('-update_time')
    data = paginator(request, idc)
    request.breadcrumbs((('首页', '/'), ('机房管理', reverse('cmdb_idc'))))

    return render(request, 'cmdb/idc/idc.html', {
        'request': request,
        'data': data
    })
예제 #29
0
파일: views.py 프로젝트: xinwujuanshi/omms
def kube_list(request):
    form = KubeNodeForm()
    # k8s = Server.objects.filter(app_project__app_name_cn='k8s').values_list('id', 'in_ip')
    # logger.info('查询k8s节点{}'.format(k8s))
    server = KubeNode.objects.select_related().all().order_by('id')

    data = paginator(request, server)

    request.breadcrumbs((('首页', '/'), ('K8S节点列表', reverse('kube_list'))))

    # data['k8s'] = json.dumps([(i[0], i[1]) for i in k8s])
    data['form'] = form

    return render_to_response('kube/kube.html', data)
예제 #30
0
파일: views.py 프로젝트: yugw-gb/omms-gy
def release_plan(request):
    data = {}

    form = ReleasePlanForm()
    plan = ReleasePlan.objects.annotate(average_server=Count('app_id')).order_by('id')
    app = ReleasePlan.objects.values_list('app', 'app_id')

    data = paginator(request, plan)

    request.breadcrumbs((('首页', '/'), ('发布计划', reverse('release_plan'))))

    data['form'] = form
    data['app'] = json.dumps([(i[0], i[1]) for i in app])

    return render_to_response('release/release_plan.html', data)