diff options
| author | Kristian Lyngstol <kristian@bohemians.org> | 2015-04-29 12:26:45 +0200 | 
|---|---|---|
| committer | Kristian Lyngstol <kristian@bohemians.org> | 2015-04-29 12:26:45 +0200 | 
| commit | 2c9231ff1b71e608b369df8666b3b1ec2f32bb74 (patch) | |
| tree | 0d7e13709c880b3dec177ee448c60c2a66855e5e /web | |
| parent | 9502fc0d398de46cea301a921b16f945289fdffd (diff) | |
NMS: Add "total switch speed" map
I'm thinking of factoring ifhighspeed for the scaling...
Diffstat (limited to 'web')
| -rw-r--r-- | web/nms.gathering.org/nms2/index.html | 5 | ||||
| -rw-r--r-- | web/nms.gathering.org/nms2/js/nms-map-handlers.js | 50 | ||||
| -rw-r--r-- | web/nms.gathering.org/nms2/js/nms.js | 4 | 
3 files changed, 55 insertions, 4 deletions
| diff --git a/web/nms.gathering.org/nms2/index.html b/web/nms.gathering.org/nms2/index.html index b9bc2b7..304cece 100644 --- a/web/nms.gathering.org/nms2/index.html +++ b/web/nms.gathering.org/nms2/index.html @@ -60,6 +60,7 @@  		<li><a href="#temp" onclick="setUpdater(handler_temp)">Temperature map</a></li>  		<li><a href="#traffic" onclick="setUpdater(handler_traffic)">Traffic map</a></li>  		<li><a href="#comment" onclick="setUpdater(handler_comment)">Comment spotter</a></li> +		<li><a href="#traffictot" onclick="setUpdater(handler_traffic_tot)">Total switch traffic</a></li>  		<li><a href="#disco" onclick="setUpdater(handler_disco)">DISCO</a></li>  		<li class="divider"> </li>  		<li><a href="#" onclick="toggleLayer('nowPickerBox');document.getElementById('nowPicker').focus();">Travel in time</a></li> @@ -264,6 +265,10 @@  		</tr>  		<tr>  		  <td>6</td> +		  <td>View total switch traffic map</td> +		</tr> +		<tr> +		  <td>7</td>  		  <td>View Disco map</td>  		</tr>  		<tr> diff --git a/web/nms.gathering.org/nms2/js/nms-map-handlers.js b/web/nms.gathering.org/nms2/js/nms-map-handlers.js index 531b686..9b2d44c 100644 --- a/web/nms.gathering.org/nms2/js/nms-map-handlers.js +++ b/web/nms.gathering.org/nms2/js/nms-map-handlers.js @@ -46,6 +46,13 @@ var handler_traffic = {  	name:"Uplink traffic map"  }; +var handler_traffic_tot = { +	updater:trafficTotUpdater, +	init:trafficTotInit, +	tag:"traffictot", +	name:"Switch traffic map" +}; +  var handler_disco = {  	updater:randomizeColors,  	init:discoInit, @@ -66,7 +73,8 @@ var handlers = [  	handler_ping,  	handler_traffic,  	handler_disco, -	handler_comment +	handler_comment, +	handler_traffic_tot  	];  /* @@ -159,14 +167,48 @@ function trafficUpdater()  	}  } -function colorFromSpeed(speed) +/* + * Init-function for uplink map + */ +function trafficTotInit() +{ +	var m = 1024 * 1024 / 8; +	drawGradient([lightgreen,green,orange,red]); +	setLegend(1,colorFromSpeed(0),"0 (N/A)");	 +	setLegend(5,colorFromSpeed(5000 * m,5) , "5000Mb/s");	 +	setLegend(4,colorFromSpeed(3000 * m,5),"3000Mb/s");	 +	setLegend(3,colorFromSpeed(1000 * m,5),"1000Mb/s");	 +	setLegend(2,colorFromSpeed(100 * m,5),"100Mb/s");	 +} + +function trafficTotUpdater() +{ +	if (!nms.switches_now["switches"]) +		return; +	for (sw in nms.switches_now["switches"]) { +		var speed = 0; +		for (port in nms.switches_now["switches"][sw]["ports"]) { +			if (!nms.switches_then["switches"][sw] || +			    !nms.switches_then["switches"][sw]["ports"] || +			    !nms.switches_then["switches"][sw]["ports"][port]) +				continue; +			var t = nms.switches_then["switches"][sw]["ports"][port]; +			var n = nms.switches_now["switches"][sw]["ports"][port]; +			speed += (parseInt(t["ifhcoutoctets"]) -parseInt(n["ifhcoutoctets"])) / (parseInt(t["time"] - n["time"])); +		} +		setSwitchColor(sw,colorFromSpeed(speed,5)); +	} +} + +function colorFromSpeed(speed,factor)  {  	var m = 1024 * 1024 / 8; +	if (factor == undefined) +		factor = 2;  	if (speed == 0)  		return blue;  	speed = speed < 0 ? 0 : speed; -	return getColorStop( 1000 * (speed / (2 * (1000 * m)))); -//	return rgb_from_max2( 100 * (speed / (2 * (1000 * m)))); +	return getColorStop( 1000 * (speed / (factor * (1000 * m))));  } diff --git a/web/nms.gathering.org/nms2/js/nms.js b/web/nms.gathering.org/nms2/js/nms.js index f6d7bb0..d4cf4e8 100644 --- a/web/nms.gathering.org/nms2/js/nms.js +++ b/web/nms.gathering.org/nms2/js/nms.js @@ -73,6 +73,7 @@ var nms = {  		'4':setMapModeFromN,  		'5':setMapModeFromN,  		'6':setMapModeFromN, +		'7':setMapModeFromN,  		'h':moveTimeFromKey,  		'j':moveTimeFromKey,  		'k':moveTimeFromKey, @@ -1526,6 +1527,9 @@ function setMapModeFromN(e,key)  			setUpdater(handler_comment);  			break;  		case '6': +			setUpdater(handler_traffic_tot); +			break; +		case '7':  			setUpdater(handler_disco);  			break;  	} | 
