You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@uima.apache.org by de...@apache.org on 2014/05/15 17:27:32 UTC

svn commit: r1594947 - in /uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main: java/org/apache/uima/ducc/ws/ java/org/apache/uima/ducc/ws/server/ webapp/root/

Author: degenaro
Date: Thu May 15 15:27:31 2014
New Revision: 1594947

URL: http://svn.apache.org/r1594947
Log:
UIMA-3826 DUCC Web Server (WS) should display Swap(GB):free on Machines page

Modified:
    uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/DuccMachinesData.java
    uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/MachineInfo.java
    uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/MachineSummaryInfo.java
    uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/server/DuccHandler.java
    uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/server/DuccHandlerClassic.java
    uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/server/DuccHandlerJsonFormat.java
    uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/webapp/root/system.machines.jsp

Modified: uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/DuccMachinesData.java
URL: http://svn.apache.org/viewvc/uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/DuccMachinesData.java?rev=1594947&r1=1594946&r2=1594947&view=diff
==============================================================================
--- uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/DuccMachinesData.java (original)
+++ uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/DuccMachinesData.java Thu May 15 15:27:31 2014
@@ -67,7 +67,8 @@ public class DuccMachinesData {
 	private static ConcurrentSkipListMap<String,MachineSummaryInfo> summaryMachines = new ConcurrentSkipListMap<String,MachineSummaryInfo>();
 	
 	private static AtomicLong memoryTotal = new AtomicLong(0);
-	private static AtomicLong memorySwapped = new AtomicLong(0);
+	private static AtomicLong swapInuse = new AtomicLong(0);
+	private static AtomicLong swapFree = new AtomicLong(0);
 	private static AtomicLong sharesTotal = new AtomicLong(0);
 	private static AtomicLong sharesInuse = new AtomicLong(0);
 	
@@ -122,7 +123,7 @@ public class DuccMachinesData {
 			Iterator<String> iterator = nodes.iterator();
 			while(iterator.hasNext()) {
 				String nodeName = (String) iterator.next();
-				MachineInfo machineInfo = new MachineInfo(IDuccEnv.DUCC_NODES_FILE_PATH, "", nodeName, "", "", null, "", "", -1, 0);
+				MachineInfo machineInfo = new MachineInfo(IDuccEnv.DUCC_NODES_FILE_PATH, "", nodeName, "", "", "", null, "", "", -1, 0);
 				unsortedMachines.put(machineInfo.getName(),machineInfo);
 			}
 		}
@@ -159,7 +160,8 @@ public class DuccMachinesData {
 	public MachineSummaryInfo getTotals() {
 		MachineSummaryInfo totals = new MachineSummaryInfo();
 		totals.memoryTotal = memoryTotal.get();
-		totals.memorySwapped = memorySwapped.get();
+		totals.swapInuse = swapInuse.get();
+		totals.swapFree = swapFree.get();
 		totals.sharesTotal = sharesTotal.get();
 		totals.sharesInuse = sharesInuse.get();
 		return totals;
@@ -170,14 +172,16 @@ public class DuccMachinesData {
 			MachineSummaryInfo oldInfo = summaryMachines.get(ip.toString());
 			summaryMachines.put(ip.toString(), newInfo);
 			memoryTotal.addAndGet(newInfo.memoryTotal-oldInfo.memoryTotal);
-			memorySwapped.addAndGet(newInfo.memorySwapped-oldInfo.memorySwapped);
+			swapInuse.addAndGet(newInfo.swapInuse-oldInfo.swapInuse);
+			swapFree.addAndGet(newInfo.swapFree-oldInfo.swapFree);
 			sharesTotal.addAndGet(newInfo.sharesTotal-oldInfo.sharesTotal);
 			sharesInuse.addAndGet(newInfo.sharesInuse-oldInfo.sharesInuse);
 		}
 		else {
 			summaryMachines.put(ip.toString(), newInfo);
 			memoryTotal.addAndGet(newInfo.memoryTotal);
-			memorySwapped.addAndGet(newInfo.memorySwapped);
+			swapInuse.addAndGet(newInfo.swapInuse);
+			swapFree.addAndGet(newInfo.swapFree);
 			sharesTotal.addAndGet(newInfo.sharesTotal);
 			sharesInuse.addAndGet(newInfo.sharesInuse);
 		}
@@ -228,19 +232,24 @@ public class DuccMachinesData {
 		// swap: in-use
 		double dvalT = nodeMetrics.getNodeMemory().getSwapTotal();
 		long lvalT = (long) (dvalT/(1024*1024)+0.5);
-		double dvalF= nodeMetrics.getNodeMemory().getSwapFree();
+		double dvalF = nodeMetrics.getNodeMemory().getSwapFree();
 		long lvalF = (long) (dvalF/(1024*1024)+0.5);
+		
 		lval = lvalT - lvalF;
-		String memSwap = ""+lval/*+memUnits*/;
-		msi.memorySwapped = lval;
+		String swapInuse = ""+lval/*+memUnits*/;
+		msi.swapInuse = lval;
 		String swapKey = ip.toString();
-		String swapVal = ip.toString();
-		if(msi.memorySwapped > 0) {
+		String swapVal = swapInuse;
+		if(msi.swapInuse > 0) {
 			isSwapping.put(swapKey, swapVal);
 		}
 		else {
 			isSwapping.remove(swapKey);
 		}
+		lval = lvalF;
+		//String swapFree = ""+lval/*+memUnits*/;
+		msi.swapFree = lval;
+		String swapFree = ""+lval/*+memUnits*/;
 		String sharesInuse = "0";
 		Properties shareMap = getShareMap(shareSize);
 		try {
@@ -253,7 +262,7 @@ public class DuccMachinesData {
 			logger.warn(location, jobid, t);
 		}
 		List<ProcessInfo> alienPids = nodeMetrics.getRogueProcessInfoList();
-		MachineInfo current = new MachineInfo("", ip.toString(), machineName, memTotal, memSwap, alienPids, sharesTotal, sharesInuse, duccEvent.getMillis(), duccEvent.getEventSize());
+		MachineInfo current = new MachineInfo("", ip.toString(), machineName, memTotal, ""+swapInuse, ""+swapFree, alienPids, sharesTotal, sharesInuse, duccEvent.getMillis(), duccEvent.getEventSize());
 		String key = normalizeMachineName(machineName);
 		MachineInfo previous = unsortedMachines.get(key);
 		if(previous != null) {
@@ -542,12 +551,13 @@ public class DuccMachinesData {
 			String name = machineInfo.getName();
 			String reserve = getReserveSize(machineInfo);
 			String memory = machineInfo.getMemTotal();
-			String swap = machineInfo.getMemSwap();
+			String swapInuse = machineInfo.getSwapInuse();
+			String swapFree = machineInfo.getSwapFree();
 			List<String> aliens = machineInfo.getAliensPidsOnly();
 			String sharesTotal = machineInfo.getSharesTotal();
 			String sharesInuse = machineInfo.getSharesInuse();
 			String heartbeat = ""+machineInfo.getElapsed();
-			MachineFacts facts = new MachineFacts(status,ip,name,reserve,memory,swap,aliens,sharesTotal,sharesInuse,heartbeat);
+			MachineFacts facts = new MachineFacts(status,ip,name,reserve,memory,swapInuse,swapFree,aliens,sharesTotal,sharesInuse,heartbeat);
 			factsList.add(facts);
 		}
 		return factsList;

Modified: uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/MachineInfo.java
URL: http://svn.apache.org/viewvc/uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/MachineInfo.java?rev=1594947&r1=1594946&r2=1594947&view=diff
==============================================================================
--- uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/MachineInfo.java (original)
+++ uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/MachineInfo.java Thu May 15 15:27:31 2014
@@ -42,7 +42,8 @@ public class MachineInfo implements Comp
 	private String ip;
 	private String name;
 	private String memTotal;
-	private String memSwap;
+	private String swapInuse;
+	private String swapFree;
 	private List<ProcessInfo> alienPids;
 	private String sharesTotal;
 	private String sharesInuse;
@@ -52,12 +53,13 @@ public class MachineInfo implements Comp
 	private long pubSize;
 	private long pubSizeMax;
 	
-	public MachineInfo(String fileDef, String ip, String name, String memTotal, String memSwap, List<ProcessInfo> alienPids, String sharesTotal, String sharesInuse, long heartbeat, long pubSize) {
+	public MachineInfo(String fileDef, String ip, String name, String memTotal, String swapInuse, String swapFree, List<ProcessInfo> alienPids, String sharesTotal, String sharesInuse, long heartbeat, long pubSize) {
 		this.fileDef = fileDef;
 		this.ip = ip;
 		this.name = name;
 		this.memTotal = memTotal;
-		this.memSwap = memSwap;
+		this.swapInuse = swapInuse;
+		this.swapFree = swapFree;
 		this.alienPids = alienPids;
 		if(this.alienPids == null) {
 			this.alienPids = new ArrayList<ProcessInfo>();
@@ -122,8 +124,12 @@ public class MachineInfo implements Comp
 		return this.memTotal;
 	}
 	
-	public String getMemSwap() {
-		return this.memSwap;
+	public String getSwapInuse() {
+		return this.swapInuse;
+	}
+	
+	public String getSwapFree() {
+		return this.swapFree;
 	}
 	
 	public List<ProcessInfo> getAlienPids() {
@@ -311,8 +317,8 @@ public class MachineInfo implements Comp
 	private int compareSwapInuse(MachineInfo m1, MachineInfo m2) {
 		int retVal = 0;
 		try {
-			long v1 = Long.parseLong(m1.getMemSwap());
-			long v2 = Long.parseLong(m2.getMemSwap());
+			long v1 = Long.parseLong(m1.getSwapInuse());
+			long v2 = Long.parseLong(m2.getSwapInuse());
 			if(v1 > v2) {
 				return -1;
 			}

Modified: uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/MachineSummaryInfo.java
URL: http://svn.apache.org/viewvc/uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/MachineSummaryInfo.java?rev=1594947&r1=1594946&r2=1594947&view=diff
==============================================================================
--- uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/MachineSummaryInfo.java (original)
+++ uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/MachineSummaryInfo.java Thu May 15 15:27:31 2014
@@ -21,7 +21,8 @@ package org.apache.uima.ducc.ws;
 public class MachineSummaryInfo {
 
 	public long memoryTotal = 0;
-	public long memorySwapped = 0;
+	public long swapInuse = 0;
+	public long swapFree = 0;
 	public long sharesTotal = 0;
 	public long sharesInuse = 0;
 }

Modified: uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/server/DuccHandler.java
URL: http://svn.apache.org/viewvc/uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/server/DuccHandler.java?rev=1594947&r1=1594946&r2=1594947&view=diff
==============================================================================
--- uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/server/DuccHandler.java (original)
+++ uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/server/DuccHandler.java Thu May 15 15:27:31 2014
@@ -2487,7 +2487,8 @@ public class DuccHandler extends DuccAbs
 		// pass 1
 		iterator = sortedMachines.keySet().iterator();
 		long memTotal = 0;
-		long memSwap = 0;
+		long swapInuse = 0;
+		long swapFree = 0;
 		long alienPids = 0;
 		long sharesTotal = 0;
 		long sharesInuse = 0;
@@ -2497,8 +2498,10 @@ public class DuccHandler extends DuccAbs
 				memTotal += Long.parseLong(machineInfo.getMemTotal());
 			}
 			catch(Exception e) {};
-			try {
-				memSwap += Long.parseLong(machineInfo.getMemSwap());
+			try {swapInuse += Long.parseLong(machineInfo.getSwapInuse());
+			}
+			catch(Exception e) {};
+			try {swapFree += Long.parseLong(machineInfo.getSwapFree());
 			}
 			catch(Exception e) {};
 			try {
@@ -2530,7 +2533,9 @@ public class DuccHandler extends DuccAbs
 		sb.append(",");
 		sb.append(quote(""+memTotal));
 		sb.append(",");
-		sb.append(quote(""+memSwap));
+		sb.append(quote(""+swapInuse));
+		sb.append(",");
+		sb.append(quote(""+swapFree));
 		sb.append(",");
 		sb.append(quote(""+alienPids));
 		sb.append(",");
@@ -2555,7 +2560,9 @@ public class DuccHandler extends DuccAbs
 			sb.append(",");
 			sb.append(quote(machineInfo.getMemTotal()));
 			sb.append(",");
-			sb.append(quote(machineInfo.getMemSwap()));
+			sb.append(quote(machineInfo.getSwapInuse()));
+			sb.append(",");
+			sb.append(quote(machineInfo.getSwapFree()));
 			sb.append(",");
 			List<ProcessInfo> alienPidsList = machineInfo.getAlienPids();
 			String alienPidsDisplay = "";

Modified: uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/server/DuccHandlerClassic.java
URL: http://svn.apache.org/viewvc/uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/server/DuccHandlerClassic.java?rev=1594947&r1=1594946&r2=1594947&view=diff
==============================================================================
--- uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/server/DuccHandlerClassic.java (original)
+++ uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/server/DuccHandlerClassic.java Thu May 15 15:27:31 2014
@@ -1653,7 +1653,8 @@ public class DuccHandlerClassic extends 
 		
 		int sumReserve = 0;
 		int sumMemory = 0;
-		int sumSwap = 0;
+		int sumSwapInuse = 0;
+		int sumSwapFree = 0;
 		int sumAliens = 0;
 		int sumSharesTotal = 0;
 		int sumSharesInuse = 0;
@@ -1673,7 +1674,8 @@ public class DuccHandlerClassic extends 
 				try {
 					sumReserve += Integer.parseInt(facts.reserve);
 					sumMemory += Integer.parseInt(facts.memory);
-					sumSwap += Integer.parseInt(facts.swap);
+					sumSwapInuse += Integer.parseInt(facts.swapInuse);
+					sumSwapFree += Integer.parseInt(facts.swapFree);
 					sumAliens += facts.aliens.size();
 					sumSharesTotal += Integer.parseInt(facts.sharesTotal);
 					sumSharesInuse += Integer.parseInt(facts.sharesInuse);
@@ -1711,7 +1713,11 @@ public class DuccHandlerClassic extends 
 			row.append("</td>");
 			// Swap: inuse
 			row.append("<td align=\"right\">");
-			row.append(""+sumSwap);
+			row.append(""+sumSwapInuse);
+			row.append("</td>");
+			// Swap: free
+			row.append("<td align=\"right\">");
+			row.append(""+sumSwapFree);
 			row.append("</td>");
 			// Alien PIDs
 			row.append("<td align=\"right\">");
@@ -1779,7 +1785,7 @@ public class DuccHandlerClassic extends 
 				row.append("</td>");
 				// Swap: inuse
 				sb = new StringBuffer();
-				String swapping = facts.swap;
+				String swapping = facts.swapInuse;
 				if(swapping.equals("0")) {
 					sb.append(swapping);
 				}
@@ -1791,6 +1797,10 @@ public class DuccHandlerClassic extends 
 				row.append("<td align=\"right\">");
 				row.append(sb);
 				row.append("</td>");
+				// Swap: free
+				row.append("<td align=\"right\">");
+				row.append(facts.swapFree);
+				row.append("</td>");
 				// Alien PIDs
 				sb = new StringBuffer();
 				long aliens = facts.aliens.size();

Modified: uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/server/DuccHandlerJsonFormat.java
URL: http://svn.apache.org/viewvc/uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/server/DuccHandlerJsonFormat.java?rev=1594947&r1=1594946&r2=1594947&view=diff
==============================================================================
--- uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/server/DuccHandlerJsonFormat.java (original)
+++ uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/server/DuccHandlerJsonFormat.java Thu May 15 15:27:31 2014
@@ -1259,7 +1259,8 @@ public class DuccHandlerJsonFormat exten
 		
 		int sumReserve = 0;
 		int sumMemory = 0;
-		int sumSwap = 0;
+		int sumSwapInuse = 0;
+		int sumSwapFree = 0;
 		int sumAliens = 0;
 		int sumSharesTotal = 0;
 		int sumSharesInuse = 0;
@@ -1279,7 +1280,8 @@ public class DuccHandlerJsonFormat exten
 				try {
 					sumReserve += Integer.parseInt(facts.reserve);
 					sumMemory += Integer.parseInt(facts.memory);
-					sumSwap += Integer.parseInt(facts.swap);
+					sumSwapInuse += Integer.parseInt(facts.swapInuse);
+					sumSwapFree += Integer.parseInt(facts.swapFree);
 					sumAliens += facts.aliens.size();
 					sumSharesTotal += Integer.parseInt(facts.sharesTotal);
 					sumSharesInuse += Integer.parseInt(facts.sharesInuse);
@@ -1303,7 +1305,9 @@ public class DuccHandlerJsonFormat exten
 			// Memory: total
 			row.add(new JsonPrimitive(sumMemory));
 			// Swap: inuse
-			row.add(new JsonPrimitive(sumSwap));
+			row.add(new JsonPrimitive(sumSwapInuse));
+			// Swap: free
+			row.add(new JsonPrimitive(sumSwapFree));
 			// Alien PIDs
 			row.add(new JsonPrimitive(sumAliens));
 			// Shares: total
@@ -1348,7 +1352,7 @@ public class DuccHandlerJsonFormat exten
 				row.add(new JsonPrimitive(facts.memory));
 				// Swap: inuse
 				sb = new StringBuffer();
-				String swapping = facts.swap;
+				String swapping = facts.swapInuse;
 				if(swapping.equals("0")) {
 					sb.append(swapping);
 				}
@@ -1358,6 +1362,8 @@ public class DuccHandlerJsonFormat exten
 					sb.append("</span>");
 				}
 				row.add(new JsonPrimitive(sb.toString()));
+				// Swap: free
+				row.add(new JsonPrimitive(facts.swapFree));
 				// Alien PIDs
 				sb = new StringBuffer();
 				long aliens = facts.aliens.size();

Modified: uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/webapp/root/system.machines.jsp
URL: http://svn.apache.org/viewvc/uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/webapp/root/system.machines.jsp?rev=1594947&r1=1594946&r2=1594947&view=diff
==============================================================================
--- uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/webapp/root/system.machines.jsp (original)
+++ uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/webapp/root/system.machines.jsp Thu May 15 15:27:31 2014
@@ -45,20 +45,8 @@ under the License.
                             $('td:eq(7)' , nRow).css( "text-align", "right" );
                             $('td:eq(8)' , nRow).css( "text-align", "right" );
                             $('td:eq(9)' , nRow).css( "text-align", "right" );
-                            $('td:eq(10)' , nRow).css( "text-align", "right" );                            
-                            if ( aData[0] == "up" ) {
-                    			jQuery('td:eq(0)', nRow).addClass('health_green');
-                			}
-                			if ( aData[0] == "down" ) {
-                    			jQuery('td:eq(0)', nRow).addClass('health_red');
-                			}
-                			try {
-                				if( parseInt(aData[4]) > 0) {
-                					jQuery('td:eq(4)', nRow).addClass('health_red');
-                				}
-                			}
-                			catch(err) {
-							}
+                            $('td:eq(10)' , nRow).css( "text-align", "right" );      
+                            $('td:eq(11)' , nRow).css( "text-align", "right" );                                 
                             return nRow;
 			},
 		} );
@@ -119,6 +107,7 @@ if (table_style.equals("scroll")) {
 	<th align="left" title="The host reservation size (hint: specify this size to reserve entire machine), in GB" >Reserve(GB):size</th>
 	<th align="left" title="The host memory size, in GB" >Memory(GB):total</th>
 	<th align="left" title="The host inuse swap size, in GB" >Swap(GB):inuse</th>
+	<th align="left" title="The host free swap size, in GB" >Swap(GB):free</th>
 	<th align="left" title="The number of alien PIDs (those processes not associated with a user running jobs or having a reservation)" >Alien PIDs</th>
 	<th align="left" title="The number of system shares" >Shares:total</th>
 	<th align="left" title="The number of system shares inuse" >Shares:inuse</th>
@@ -148,6 +137,7 @@ if (table_style.equals("classic")) {
 		<th align="left" title="The host reservation size (hint: specify this size to reserve entire machine), in GB" >Reserve(GB):size</th>
         <th align="left" title="The host memory size, in GB" >Memory(GB):total</th>	
 		<th align="left" title="The host inuse swap size, in GB" >Swap(GB):inuse</th>
+		<th align="left" title="The host free swap size, in GB" >Swap(GB):free</th>
 		<th align="left" title="The number of alien PIDs (those processes not associated with a user running jobs or having a reservation)" >Alien PIDs</th>
 		<th align="left" title="The number of system shares" >Shares:total</th>
 		<th align="left" title="The number of system shares inuse" >Shares:inuse</th>