mirror of
				https://github.com/retspen/webvirtcloud
				synced 2025-07-31 12:41:08 +00:00 
			
		
		
		
	Added graph scale for instance
This commit is contained in:
		
							parent
							
								
									02570cd826
								
							
						
					
					
						commit
						4a17f08740
					
				
					 5 changed files with 302 additions and 16 deletions
				
			
		| 
						 | 
				
			
			@ -38,43 +38,43 @@
 | 
			
		|||
                            <!-- Nav tabs -->
 | 
			
		||||
                            <ul class="nav nav-pills" role="tablist">
 | 
			
		||||
                                <li role="presentation" class="active">
 | 
			
		||||
                                    <a href="#power" id="action-button" aria-controls="power" role="tab" data-toggle="tab">
 | 
			
		||||
                                    <a href="#power" class="action-button" aria-controls="power" role="tab" data-toggle="tab">
 | 
			
		||||
                                        <span id="action-block" class="glyphicon glyphicon-off" aria-hidden="true"></span>
 | 
			
		||||
                                        {% trans "Power" %}
 | 
			
		||||
                                    </a>
 | 
			
		||||
                                </li>
 | 
			
		||||
                                <li role="presentation">
 | 
			
		||||
                                    <a href="#access" id="action-button" aria-controls="access" role="tab" data-toggle="tab">
 | 
			
		||||
                                    <a href="#access" class="action-button" aria-controls="access" role="tab" data-toggle="tab">
 | 
			
		||||
                                        <span id="action-block" class="glyphicon glyphicon-lock" aria-hidden="true"></span>
 | 
			
		||||
                                        {% trans "Access" %}
 | 
			
		||||
                                    </a>
 | 
			
		||||
                                </li>
 | 
			
		||||
                                <li role="presentation">
 | 
			
		||||
                                    <a href="#resize" id="action-button" aria-controls="resize" role="tab" data-toggle="tab">
 | 
			
		||||
                                    <a href="#resize" class="action-button" aria-controls="resize" role="tab" data-toggle="tab">
 | 
			
		||||
                                        <span id="action-block" class="glyphicon glyphicon-resize-full" aria-hidden="true"></span>
 | 
			
		||||
                                        {% trans "Resize" %}
 | 
			
		||||
                                    </a>
 | 
			
		||||
                                </li>
 | 
			
		||||
                                <li role="presentation">
 | 
			
		||||
                                    <a href="#snapshots" id="action-button" aria-controls="snapshots" role="tab" data-toggle="tab">
 | 
			
		||||
                                    <a href="#snapshots" class="action-button" aria-controls="snapshots" role="tab" data-toggle="tab">
 | 
			
		||||
                                        <span id="action-block" class="glyphicon glyphicon-camera" aria-hidden="true"></span>
 | 
			
		||||
                                        {% trans "Snapshots" %}
 | 
			
		||||
                                    </a>
 | 
			
		||||
                                </li>
 | 
			
		||||
                                <li role="presentation">
 | 
			
		||||
                                    <a href="#settings" id="action-button" aria-controls="settings" role="tab" data-toggle="tab">
 | 
			
		||||
                                    <a href="#settings" class="action-button" aria-controls="settings" role="tab" data-toggle="tab">
 | 
			
		||||
                                        <span id="action-block" class="glyphicon glyphicon-cog" aria-hidden="true"></span>
 | 
			
		||||
                                        {% trans "Settings" %}
 | 
			
		||||
                                    </a>
 | 
			
		||||
                                </li>
 | 
			
		||||
                                <li role="presentation">
 | 
			
		||||
                                    <a href="#graphics" id="action-button" aria-controls="graphics" role="tab" data-toggle="tab">
 | 
			
		||||
                                    <a href="#graphics" id="chartgraphs" class="action-button" aria-controls="graphics" role="tab" data-toggle="tab">
 | 
			
		||||
                                        <span id="action-block" class="glyphicon glyphicon-signal" aria-hidden="true"></span>
 | 
			
		||||
                                        {% trans "Graphs" %}
 | 
			
		||||
                                    </a>
 | 
			
		||||
                                </li>
 | 
			
		||||
                                <li role="presentation">
 | 
			
		||||
                                    <a href="#undefine" id="action-button" aria-controls="undefine" role="tab" data-toggle="tab">
 | 
			
		||||
                                    <a href="#undefine" class="action-button" aria-controls="undefine" role="tab" data-toggle="tab">
 | 
			
		||||
                                        <span id="action-block" class="glyphicon glyphicon-trash" aria-hidden="true"></span>
 | 
			
		||||
                                        {% trans "Destroy" %}
 | 
			
		||||
                                    </a>
 | 
			
		||||
| 
						 | 
				
			
			@ -689,15 +689,55 @@
 | 
			
		|||
                                        <!-- Nav tabs -->
 | 
			
		||||
                                        <ul class="nav nav-tabs" role="tablist">
 | 
			
		||||
                                            <li role="presentation" class="active">
 | 
			
		||||
                                                <a href="#graps" aria-controls="graps" role="tab" data-toggle="tab">
 | 
			
		||||
                                                <a href="#graphs" aria-controls="graphs" role="tab" data-toggle="tab">
 | 
			
		||||
                                                    {% trans "Real Time" %}
 | 
			
		||||
                                                </a>
 | 
			
		||||
                                            </li>
 | 
			
		||||
                                        </ul>
 | 
			
		||||
                                        <!-- Tab panes -->
 | 
			
		||||
                                        <div class="tab-content">
 | 
			
		||||
                                            <div role="tabpanel" class="tab-pane tab-pane-bordered active" id="graps">
 | 
			
		||||
                                                <p>Graphics</p>
 | 
			
		||||
                                            <div role="tabpanel" class="tab-pane tab-pane-bordered active" id="graphs">
 | 
			
		||||
                                                <div class="panel panel-success">
 | 
			
		||||
                                                    <div class="panel-heading">
 | 
			
		||||
                                                        <h3 class="panel-title"><i class="fa fa-long-arrow-right"></i> {% trans "CPU usage" %}</h3>
 | 
			
		||||
                                                    </div>
 | 
			
		||||
                                                    <div class="panel-body">
 | 
			
		||||
                                                        <div class="flot-chart">
 | 
			
		||||
                                                            <div class="flot-chart-content" id="flot-moving-line-chart" style="padding: 0px; position: relative;">
 | 
			
		||||
                                                                <canvas id="cpuChart" width="735" height="250"></canvas>
 | 
			
		||||
                                                            </div>
 | 
			
		||||
                                                        </div>
 | 
			
		||||
                                                    </div>
 | 
			
		||||
                                                </div>
 | 
			
		||||
                                                {% for net in networks %}
 | 
			
		||||
                                                    <div class="panel panel-info">
 | 
			
		||||
                                                        <div class="panel-heading">
 | 
			
		||||
                                                            <h3 class="panel-title"><i class="fa fa-long-arrow-right"></i> {% trans "Bandwidth device:" %} eth{{ forloop.counter0 }}</h3>
 | 
			
		||||
                                                        </div>
 | 
			
		||||
                                                        <div class="panel-body">
 | 
			
		||||
                                                            <div class="flot-chart">
 | 
			
		||||
                                                                <div class="flot-chart-content" id="flot-moving-line-chart" style="padding: 0px; position: relative;">
 | 
			
		||||
                                                                    <canvas id="netEth{{ forloop.counter0 }}Chart" width="735" height="250"></canvas>
 | 
			
		||||
                                                                </div>
 | 
			
		||||
                                                            </div>
 | 
			
		||||
                                                        </div>
 | 
			
		||||
                                                    </div>
 | 
			
		||||
                                                {% endfor %}
 | 
			
		||||
                                                {% for disk in disks %}
 | 
			
		||||
                                                    <div class="panel panel-warning">
 | 
			
		||||
                                                        <div class="panel-heading">
 | 
			
		||||
                                                            <h3 class="panel-title"><i class="fa fa-long-arrow-right"></i> {% trans "Disk I/O device:" %} {{ disk.dev }}</h3>
 | 
			
		||||
                                                        </div>
 | 
			
		||||
                                                        <div class="panel-body">
 | 
			
		||||
                                                            <div class="flot-chart">
 | 
			
		||||
                                                                <div class="flot-chart-content" id="flot-moving-line-chart" style="padding: 0px; position: relative;">
 | 
			
		||||
                                                                    <canvas id="blk{{ disk.dev }}Chart" width="735" height="250"></canvas>
 | 
			
		||||
                                                                </div>
 | 
			
		||||
                                                            </div>
 | 
			
		||||
                                                        </div>
 | 
			
		||||
                                                    </div>
 | 
			
		||||
                                                {% endfor %}
 | 
			
		||||
                                                <div class="clearfix"></div>
 | 
			
		||||
                                            </div>
 | 
			
		||||
                                        </div>
 | 
			
		||||
                                    </div>
 | 
			
		||||
| 
						 | 
				
			
			@ -828,4 +868,126 @@
 | 
			
		|||
        });
 | 
			
		||||
    });
 | 
			
		||||
</script>
 | 
			
		||||
<script src="{{ STATIC_URL }}js/Chart.min.js"></script>
 | 
			
		||||
<script>
 | 
			
		||||
$( "#graphics" ).click();
 | 
			
		||||
</script>
 | 
			
		||||
<script>
 | 
			
		||||
    $('#chartgraphs').on('shown.bs.tab', function (e) {
 | 
			
		||||
        var cpuLineData = {
 | 
			
		||||
            labels : [0, 0, 0, 0, 0],
 | 
			
		||||
            datasets : [
 | 
			
		||||
                {
 | 
			
		||||
                    fillColor: "rgba(241,72,70,0.5)",
 | 
			
		||||
                    strokeColor: "rgba(241,72,70,1)",
 | 
			
		||||
                    pointColor : "rgba(241,72,70,1)",
 | 
			
		||||
                    pointStrokeColor : "#fff",
 | 
			
		||||
                    pointHighlightFill : "#fff",
 | 
			
		||||
                    pointHighlightStroke : "rgba(220,220,220,1)",
 | 
			
		||||
                    data : [0, 0, 0, 0, 0]
 | 
			
		||||
                }
 | 
			
		||||
            ]
 | 
			
		||||
        };
 | 
			
		||||
 | 
			
		||||
        var diskLineData = {
 | 
			
		||||
            labels : [0, 0, 0, 0, 0],
 | 
			
		||||
            datasets : [
 | 
			
		||||
                {
 | 
			
		||||
                    "fillColor": "rgba(83,191,189,0.5)",
 | 
			
		||||
                    "strokeColor": "rgba(83,191,189,1)",
 | 
			
		||||
                    "pointColor": "rgba(83,191,189,1)",
 | 
			
		||||
                    "pointStrokeColor": "#fff",
 | 
			
		||||
                    "data": [0, 0, 0, 0, 0]
 | 
			
		||||
                },
 | 
			
		||||
                {
 | 
			
		||||
                    "fillColor": "rgba(249,134,33,0.5)",
 | 
			
		||||
                    "strokeColor": "rgba(249,134,33,1)",
 | 
			
		||||
                    "pointColor": "rgba(249,134,33,1)",
 | 
			
		||||
                    "pointStrokeColor": "#fff",
 | 
			
		||||
                    "data": [0, 0, 0, 0, 0]
 | 
			
		||||
                },
 | 
			
		||||
            ]
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        var netLineData = {
 | 
			
		||||
            labels : [0, 0, 0, 0, 0],
 | 
			
		||||
            datasets : [
 | 
			
		||||
               {
 | 
			
		||||
                    "fillColor": "rgba(83,191,189,0.5)",
 | 
			
		||||
                    "strokeColor": "rgba(83,191,189,1)",
 | 
			
		||||
                    "pointColor": "rgba(83,191,189,1)",
 | 
			
		||||
                    "pointStrokeColor": "#fff",
 | 
			
		||||
                    "data": [0, 0, 0, 0, 0]
 | 
			
		||||
               },
 | 
			
		||||
               {
 | 
			
		||||
                    "fillColor": "rgba(151,187,205,0.5)",
 | 
			
		||||
                    "strokeColor": "rgba(151,187,205,1)",
 | 
			
		||||
                    "pointColor": "rgba(151,187,205,1)",
 | 
			
		||||
                    "pointStrokeColor": "#fff",
 | 
			
		||||
                    "data": [0, 0, 0, 0, 0]
 | 
			
		||||
               },
 | 
			
		||||
            ]
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        var cpuOpt = {
 | 
			
		||||
            animation: false,
 | 
			
		||||
            pointDotRadius: 2,
 | 
			
		||||
            scaleLabel: "<%=value%> %",
 | 
			
		||||
            scaleOverride: true,
 | 
			
		||||
            scaleSteps: 10,
 | 
			
		||||
            scaleStepWidth: 10,
 | 
			
		||||
            scaleStartValue: 0,
 | 
			
		||||
            responsive: true
 | 
			
		||||
        };
 | 
			
		||||
 | 
			
		||||
        var diskOpt = {
 | 
			
		||||
            animation: false,
 | 
			
		||||
            pointDotRadius: 2,
 | 
			
		||||
            scaleLabel: "<%=value%> Mb/s",
 | 
			
		||||
            responsive: true
 | 
			
		||||
        };
 | 
			
		||||
 | 
			
		||||
        var netOpt = {
 | 
			
		||||
            animation: false,
 | 
			
		||||
            pointDotRadius: 2,
 | 
			
		||||
            scaleLabel: "<%=value%> Mbps",
 | 
			
		||||
            responsive: true
 | 
			
		||||
        };
 | 
			
		||||
 | 
			
		||||
        var cpu_ctx = $("#cpuChart").get(0).getContext("2d");
 | 
			
		||||
        var cpuChart = new Chart(cpu_ctx).Line(cpuLineData, cpuOpt);
 | 
			
		||||
 | 
			
		||||
        var diskChart = {};
 | 
			
		||||
        {% for disk in disks %}
 | 
			
		||||
            var disk_ctx_{{ disk.dev }} = $("#blk{{ disk.dev }}Chart").get(0).getContext("2d");
 | 
			
		||||
            diskChart['{{ disk.dev }}'] = new Chart(disk_ctx_{{ disk.dev }}).Line(diskLineData, diskOpt);
 | 
			
		||||
        {% endfor %}
 | 
			
		||||
 | 
			
		||||
        var netChart = {};
 | 
			
		||||
        {% for net in networks %}
 | 
			
		||||
            var net_ctx_{{ forloop.counter0 }} = $("#netEth{{ forloop.counter0 }}Chart").get(0).getContext("2d");
 | 
			
		||||
            netChart['{{ forloop.counter0 }}'] = new Chart(net_ctx_{{ forloop.counter0 }}).Line(netLineData, netOpt);
 | 
			
		||||
        {% endfor %}
 | 
			
		||||
 | 
			
		||||
        function graph_usage() {
 | 
			
		||||
            $.getJSON('{% url 'inst_graph' compute_id vname %}', function (data) {
 | 
			
		||||
                cpuChart.scale.xLabels = data.timeline;
 | 
			
		||||
                for (var i = 0; i < 5; i++) {
 | 
			
		||||
                    cpuChart.datasets[0].points[i].value = data.cpudata[i];
 | 
			
		||||
                }
 | 
			
		||||
                cpuChart.update();
 | 
			
		||||
            });
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
{##}
 | 
			
		||||
{#        $(function(f) {#}
 | 
			
		||||
{#            window.setInterval('graph_usage()', 2000);#}
 | 
			
		||||
{#        });#}
 | 
			
		||||
 | 
			
		||||
    });
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 </script>
 | 
			
		||||
{% endblock %}
 | 
			
		||||
| 
						 | 
				
			
			@ -81,7 +81,7 @@
 | 
			
		|||
            </div>
 | 
			
		||||
{% endblock %}
 | 
			
		||||
{% block script %}
 | 
			
		||||
<script src="{{ STATIC_URL }}/js/Chart.min.js"></script>
 | 
			
		||||
<script src="{{ STATIC_URL }}js/Chart.min.js"></script>
 | 
			
		||||
<script>
 | 
			
		||||
    var cpuLineData = {
 | 
			
		||||
        labels : [0, 0, 0, 0, 0],
 | 
			
		||||
| 
						 | 
				
			
			@ -133,7 +133,7 @@
 | 
			
		|||
        responsive: true
 | 
			
		||||
    });
 | 
			
		||||
 | 
			
		||||
    function hostusage() {
 | 
			
		||||
    function graph_usage() {
 | 
			
		||||
        $.getJSON('{% url 'compute_graph' compute_id %}', function (data) {
 | 
			
		||||
            cpuChart.scale.xLabels = data.timeline;
 | 
			
		||||
            memChart.scale.xLabels = data.timeline;
 | 
			
		||||
| 
						 | 
				
			
			@ -145,8 +145,9 @@
 | 
			
		|||
            memChart.update();
 | 
			
		||||
        });
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    $(function () {
 | 
			
		||||
        window.setInterval('hostusage()', 4000);
 | 
			
		||||
        window.setInterval(graph_usage(), 4000);
 | 
			
		||||
    });
 | 
			
		||||
</script>
 | 
			
		||||
{% endblock %}
 | 
			
		||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue