X-Git-Url: https://osm.etsi.org/gitweb/?a=blobdiff_plain;ds=sidebyside;f=src%2Femuvim%2Fdashboard%2Fjs%2Fmain.js;h=be63ed1e5757fd5678007df6bc504dc14072310e;hb=refs%2Fchanges%2F16%2F8316%2F1;hp=19169accf4094d83a40458751031cb09abe0d263;hpb=dd559512e47df550fc8383d01bedec99cc54cff2;p=osm%2Fvim-emu.git
diff --git a/src/emuvim/dashboard/js/main.js b/src/emuvim/dashboard/js/main.js
index 19169ac..be63ed1 100755
--- a/src/emuvim/dashboard/js/main.js
+++ b/src/emuvim/dashboard/js/main.js
@@ -25,21 +25,21 @@
acknowledge the contributions of their colleagues of the SONATA
partner consortium (www.sonata-nfv.eu).
*/
-var API_HOST = "http://127.0.0.1:5001";
+var API_HOST = ""; // set to a remote url if dashboard is not served by REST API server
var ERROR_ALERT = false;
var TIMESTAMP = 0;
var CONNECTED = false;
var LATENESS_UPDATE_INTERVAL = 50;
-var DATA_UPDATE_INTERVAL = 1000 * 10;
+var DATA_UPDATE_INTERVAL = 1000 * 10; // 30 seconds
var LAST_UPDATE_TIMESTAMP_CONTAINER = 0;
var LAST_UPDATE_TIMESTAMP_DATACENTER = 0;
function update_lateness_loop() {
lateness_datacenter= (Date.now() - LAST_UPDATE_TIMESTAMP_DATACENTER) / 1000;
- $("#lbl_lateness_datacenter").text("Lateness: " + Number(lateness_datacenter).toPrecision(3) + "s");
+ $("#lbl_lateness_datacenter").text("Lateness: " + Number(lateness_datacenter).toPrecision(2) + "s");
lateness_container= (Date.now() - LAST_UPDATE_TIMESTAMP_CONTAINER) / 1000;
- $("#lbl_lateness_container").text("Lateness: " + Number(lateness_container).toPrecision(3) + "s");
+ $("#lbl_lateness_container").text("Lateness: " + Number(lateness_container).toPrecision(2) + "s");
// loop while connected
if(CONNECTED)
setTimeout(update_lateness_loop, LATENESS_UPDATE_INTERVAL)
@@ -53,11 +53,13 @@ function errorAjaxConnection()
{
ERROR_ALERT = true;
// show message
- alert("ERROR!\nAPI request failed.\n\n Please check the backend connection.", function() {
- // callback
- ERROR_ALERT = false;
- });
+ //alert("API request failed. Is the emulator running?", function() {
+ // // callback
+ // ERROR_ALERT = false;
+ //});
}
+ CONNECTED = false;
+ console.error("API request failed. Is the emulator running?")
}
@@ -72,7 +74,7 @@ function update_table_datacenter(data)
$.each(data, function(i, item) {
var row_str = "";
row_str += '
';
- row_str += '' + item.label + '1 | ';
+ row_str += '' + item.label + ' | ';
row_str += '' + item.internalname + ' | ';
row_str += '' + item.switch + ' | ';
row_str += '' + item.n_running_containers + ' | ';
@@ -93,43 +95,27 @@ function update_table_container(data)
// clear table
$("#table_container").empty();
// header
- $("#table_container").append('
Datacenter | Container | Image | docker0 | --Networking-- |
');
+ $("#table_container").append('Datacenter | Container | Image | docker0 | Status |
');
// fill table
$.each(data, function(i, item) {
var row_str = "";
- row_str += '';
+ row_str += '
';
row_str += '' + item[1].datacenter + ' | ';
row_str += '' + item[0] + ' | ';
row_str += '' + item[1].image + ' | ';
- row_str += '' + item[1].docker_network + ' | ';
- row_str += '';
- //row_str += build_network_table(item[1].network, item[0]);
- row_str += ' | ';
- row_str += '
';
- $("#table_container").append(row_str);
- build_network_table(item[1].network, item[0]);
+ row_str += '' + item[1].docker_network + '
| ';
+ if(item[1].state.Status == "running")
+ row_str += 'running | ';
+ else
+ row_str += 'stopped | ';
+ row_str += '';
+ $("#table_container").append(row_str);
});
$("#lbl_container_count").text(data.length);
- $("#table_network").append('datacenter port | interface | ip | mac |
')
// update lateness counter
LAST_UPDATE_TIMESTAMP_CONTAINER = Date.now();
}
-function build_network_table(network_list, id)
-{
- console.debug('network list ' + id)
- console.debug(network_list)
- var row_str = "";
- network_list.forEach(function(interface) {
- row_str += '
';
- row_str += '' + interface.dc_portname + ' | ';
- row_str += '' + interface.intf_name + ' | ';
- row_str += '' + interface.ip + ' | ';
- row_str += '' + interface.mac + ' | ';
- row_str += '
';
- });
- $("#network_list_" + id).append(row_str)
-}
function fetch_datacenter()
{
@@ -149,14 +135,6 @@ function fetch_container()
}
-function fetch_d3graph()
-{
- // do HTTP request and trigger gui update on success
- var request_url = API_HOST + "/restapi/network/d3jsgraph";
- console.debug("fetching from: " + request_url);
- //$.getJSON(request_url, update_graph);
-}
-
function fetch_loop()
{
// only fetch if we are connected
@@ -177,7 +155,7 @@ function connect()
{
console.info("connect()");
// get host address
- API_HOST = "http://" + $("#text_api_host").val();
+ //API_HOST = "http://" + $("#text_api_host").val();
console.debug("API address: " + API_HOST);
// reset data
LAST_UPDATE_TIMESTAMP_DATACENTER = Date.now();
@@ -187,36 +165,19 @@ function connect()
update_lateness_loop();
// restart data fetch loop
fetch_loop();
- // gui updates
- $("#btn_disconnect").removeClass("disabled");
- $("#btn_connect").addClass("disabled");
-}
-
-function disconnect()
-{
- console.info("disconnect()");
- CONNECTED = false;
- // gui updates
- $("#btn_connect").removeClass("disabled");
- $("#btn_disconnect").addClass("disabled");
}
$(document).ready(function(){
console.info("document ready");
// setup global connection error handling
- /*
+
$.ajaxSetup({
"error": errorAjaxConnection
});
- // add listeners
- $("#btn_connect").click(connect);
- $("#btn_disconnect").click(disconnect);
- */
- setTimeout(fetch_datacenter, 500);//fetch_datacenter();
- setTimeout(fetch_container, 1000);//fetch_container();
-
+ // connect
+ connect();
// additional refresh on window focus
$(window).focus(function () {