rabbitview.jsp 10.2 KB
<%@ page language="java" contentType="text/html; charset=UTF-8"
         pageEncoding="UTF-8" %>
<%@page import="com.ui.contants.ProjectConstant"%>
<%
    String path = request.getContextPath();
    String basePath = request.getScheme() + "://"
            + request.getServerName() + ":" + request.getServerPort()
            + path + "/";
%>

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <link rel="stylesheet" href="<%=basePath %>css/bootstrap.min.css"/>
    <link rel="stylesheet" href="<%=basePath %>css/bootstrap-datetimepicker.css"/>
    <link href="<%=basePath %>js/bootstrap-plugin/css/bootstrap.table.css" rel="stylesheet" media="screen"/>
    <link rel="stylesheet" href="<%=basePath %>css/bootstrap-responsive.min.css"/>
    <link rel="stylesheet" href="<%=basePath %>css/fullcalendar.css"/>
    <link rel="stylesheet" href="<%=basePath %>css/unicorn.main.css"/>
    <link rel="stylesheet" href="<%=basePath %>css/unicorn.grey.css"/>
    <link rel="stylesheet" href="<%=basePath %>css/jquery-ui.css"/>
    <link rel="stylesheet" href="<%=basePath %>css/uniform.css"/>
    <link rel="stylesheet" href="<%=basePath %>css/select2.css"/>
    <link rel="stylesheet" href="<%=basePath %>js/jstree/themes/proton/style.css"/>
    <link rel="stylesheet" href="<%=basePath %>css/select2.css"/>
    <link rel="stylesheet" href="<%=basePath %>css/yoho.css"/>
    <script src="<%=basePath %>js/excanvas.min.js" charset="UTF-8" type="text/javascript"></script>
    <script src="<%=basePath %>js/jquery-1.12.0.min.js" charset="UTF-8" type="text/javascript"></script>
    <script src="<%=basePath %>js/jquery-ui.custom.js" charset="UTF-8" type="text/javascript"></script>
    <script src="<%=basePath %>/js/bootstrap.min.js"></script>
    <script src="<%=basePath %>/js/unicorn.js"></script>
    <script src="<%=basePath %>js/bootstrap-plugin/datetimepicker/moment-with-locales.js" charset="UTF-8"
            type="text/javascript"></script>
    <script src="<%=basePath %>js/bootstrap-plugin/datetimepicker/bootstrap-datetimepicker.js" charset="UTF-8"
            type="text/javascript"></script>
    <script src="<%=basePath %>js/global.js" charset="UTF-8" type="text/javascript"></script>
    <script src="<%=basePath %>js/bootstrap-plugin/bootstrap.pagination.js" charset="UTF-8"
            type="text/javascript"></script>
    <script src="<%=basePath %>js/bootstrap-plugin/bootstrap.table.js" charset="UTF-8" type="text/javascript"></script>
    <script src="<%=basePath %>js/bootstrap-plugin/bootstrap.dialog.js" charset="UTF-8" type="text/javascript"></script>
    <script src="<%=basePath %>js/bootstrap-plugin/bootstrap.form.js" charset="UTF-8" type="text/javascript"></script>
    <script src="<%=basePath %>js/bootstrap-plugin/bootstrap.panel.js" charset="UTF-8" type="text/javascript"></script>
    <script src="<%=basePath %>js/bootstrap-plugin/bootstrap.alerts.js" charset="UTF-8" type="text/javascript"></script>
    <script src="<%=basePath %>js/bootstrap-plugin/bootstrap.accordion.js" charset="UTF-8"
            type="text/javascript"></script>
    <script src="<%=basePath %>js/bootstrap-plugin/bootstrap.breadcrumb.js" charset="UTF-8"
            type="text/javascript"></script>
    <script src="<%=basePath %>js/bootstrap-plugin/bootstrap.validate.js" charset="UTF-8"
            type="text/javascript"></script>
    <script src="<%=basePath %>js/bootstrap-plugin/bootstrap.form.js" charset="UTF-8" type="text/javascript"></script>
    <script src="<%=basePath %>js/layer/layer.js" charset="UTF-8" type="text/javascript"></script>
    <script src="<%=basePath %>js/bootstrap-plugin/bootstrap.select.js" charset="UTF-8" type="text/javascript"></script>
    <script src="<%=basePath %>js/jstree/jstree.min.js"></script>
    <script src="<%=basePath %>js/jquery.toaster.js"></script>
    <link rel="stylesheet" href="<%=basePath %>css/nginxview.css"/>
    <script>
        var contextPath = '<%=basePath %>';
    </script>
    <title>YOHO!运维</title>
</head>
<body>

<!-- 头部 -->
<div id="head">
</div>
<!-- 右侧具体内容 -->
<div id="content">

    <div id="breadcrumb">
        <a href="#" title="Go to Home" class="tip-bottom"><i
                class="icon-home"></i> Home</a> <a
            href="#" class="current">rabbitmq</a>
    </div>

    <div class="container-fluid">
        <div class="widget-box">
            <div class="widget-title">
                <h5>RabbitMQ状态预览 <font color="red">(最近2分钟)</font></h5>
            </div>
        </div>

        <div class="container-fluid" id="rabbitmq_container">
            <%--<div class="row-fluid" style="border:solid 1px 	#CDC9C9; padding: 10px">
                <div class="span12">
                    <div class="section section-visible">
                        <h3>AWS</h3>

                        <div class="hider updatable" style="display:block;">
                            <div class="row row-stat" id="aws_rabbit_row">
                            </div>
                            <!-- row -->
                        </div>
                    </div>
                </div>
            </div>--%>

            <%--<div class="row-fluid" style="margin-top: 5%;border:solid 1px 	#CDC9C9; padding: 10px">
                <div class="span12">
                    <div class="section section-visible">
                        <h3>QCloud</h3>

                        <div class="hider updatable" style="display:block;">
                            <div class="row row-stat" id="qcloud_rabbit_row">
                            </div>
                            <!-- row -->
                        </div>
                    </div>
                </div>
            </div>--%>
        </div>
    </div>
</div>
</body>
<script src="<%=basePath %>script/common/genarate_left_panel.js?v=<%=ProjectConstant.MENU_VERSION %>"></script>
<script>
    $("#li_monitor").addClass("active open");
    $("#li_rabbitview").addClass("active");
</script>
<script>

    /*   $("#rabbitmqMenu").click(function () {

           if ($("#rabbitmqUl").css('display') == "none") {
               $("#rabbitmqUl").css('display', 'block');
               $("#rabbitmqUl li").css('background', '#545454');
           } else {
               $("#rabbitmqUl").css('display', 'none');
           }
       });*/


    $(
        updateView()
    );

    function updateView() {
        $.ajax({
            url: getUrlBasePath() + "/rabbitmq/allRabbitMq",
            type: "post",
            dataType: "json",
            data: {
                /*moType: "aws"*/
            },
            success: function (response) {

                groupMqType(response.data);

            },
            error: function (e) {

            }
        });

    }

    function groupMqType(data) {
        $("#rabbitmq_container").html("");
        var typeIdStr="";
        for (var i = 0; i < data.length; i++) {
            var tmpTypeId=data[i].moTypeId;
            var rabbit_row_id= "rabbit_row_"+tmpTypeId;

            if(typeIdStr.indexOf(tmpTypeId+",")<0){
                typeIdStr += (tmpTypeId+",");
                //添加一个div用例存储mq分组
                var divHtml='<div class="row-fluid" style="margin-top: 10px;border:solid 1px 	#CDC9C9; padding: 10px">';
                divHtml +=     '<div class="span12">';
                divHtml +=        '<div class="section section-visible">';
                divHtml +=           '<h3>'+data[i].moTypeName+'</h3>';

                divHtml +=           '<div class="hider updatable" style="display:block;">';
                divHtml +=               '<div class="row row-stat" id="'+rabbit_row_id+'">';
                divHtml +=               '</div>';
                divHtml +=           '</div>';
                divHtml +=         '</div>';
                divHtml +=     '</div>';
                divHtml += '</div>';
                $("#rabbitmq_container").append(divHtml);

                var divView = document.getElementById(rabbit_row_id);
                updateRabbitView(divView, data,tmpTypeId);
            }


        }
    }

    function updateRabbitView(view, data, typeid) {

        for (var i = 0; i < data.length; i++) {
            if(data[i].moTypeId!=typeid){
                continue;
            }

            var col = $("<div style='width:420px;' class='col-md-4' id='" + data[i].moId + "' onclick='ok(id)'>");

            col.appendTo(view);

            var panel = $("<div>");

            if (data[i].moState == 0) {
                panel.addClass("panel panel-fail-alt noborder");
            }
            else {
                panel.addClass("panel panel-success-alt noborder");
            }

            col.append(panel);

            var panel_head = $("<div class='panel-heading noborder'>")

            panel.append(panel_head);

            var panel_icon = $("<div class='panel-icon' style='background-image:url(\""+ contextPath + "img/rabbit.png\"); width:60px;height:60px;' >");

            panel_head.append(panel_icon);

            var media_body = $("<div class='media-body'>");

            panel_head.append(media_body);

            var tile = $("<h5 class='md-title nomargin'>");

            var tile_value = $("<strong>").html(data[i].moName);

            tile.append(tile_value);

            media_body.append(tile);

            var tile_info = $("<h1 class='mt5'>").html(data[i].moHostIp);

            media_body.append(tile_info);

            var hr = $("<hr>");

            panel_head.append(hr);

            var parameters = $("<div class='clearfix mt20'>");

            panel_head.append(parameters);

            var queuePara = $("<div class='pull-left'>");

            queuePara.append($("<h5 class='md-title nomargin'>").html("Queues"));

            queuePara.append($("<h4 class='nomargin'>").html(data[i].moQueues));

            parameters.append(queuePara);

            var msgPara = $("<div class='pull-right'>");

            msgPara.append($("<h5 class='md-title nomargin'>").html("Messages"));

            msgPara.append($("<h4 class='nomargin'>").html(data[i].moMsgs));

            parameters.append(msgPara);
        }

    }


    function ok(id) {
        window.location.href = "toRabbitmqInfo?moId=" + id;
    }


</script>