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 2015/01/07 22:29:46 UTC

svn commit: r1650173 - /uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/server/DuccWebMonitorManagedReservation.java

Author: degenaro
Date: Wed Jan  7 21:29:46 2015
New Revision: 1650173

URL: http://svn.apache.org/r1650173
Log:
UIMA-4174 DUCC Monitor (CLI) should display host (and PID) for Managed Reservations

Modified:
    uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/server/DuccWebMonitorManagedReservation.java

Modified: uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/server/DuccWebMonitorManagedReservation.java
URL: http://svn.apache.org/viewvc/uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/server/DuccWebMonitorManagedReservation.java?rev=1650173&r1=1650172&r2=1650173&view=diff
==============================================================================
--- uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/server/DuccWebMonitorManagedReservation.java (original)
+++ uima/sandbox/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/server/DuccWebMonitorManagedReservation.java Wed Jan  7 21:29:46 2015
@@ -22,10 +22,12 @@ import java.util.ArrayList;
 import java.util.Enumeration;
 import java.util.Iterator;
 import java.util.Map;
+import java.util.Map.Entry;
 import java.util.concurrent.ConcurrentHashMap;
 import java.util.concurrent.atomic.AtomicInteger;
 
 import org.apache.uima.ducc.common.CancelReasons.CancelReason;
+import org.apache.uima.ducc.common.NodeIdentity;
 import org.apache.uima.ducc.common.json.MonitorInfo;
 import org.apache.uima.ducc.common.utils.DuccLogger;
 import org.apache.uima.ducc.common.utils.DuccLoggerComponents;
@@ -57,6 +59,35 @@ public class DuccWebMonitorManagedReserv
 		this.timeoutMillis = timeoutMillis;
 	}
 	
+	private ArrayList<String> getRemotePids (Map<DuccId, IDuccProcess> map) {
+		String location = "getRemotePids";
+		ArrayList<String> list = new ArrayList<String>();
+		if(map != null) {
+			if(map.size() > 0) {
+				for(Entry<DuccId, IDuccProcess> entry : map.entrySet()) {
+					IDuccProcess proc = entry.getValue();
+					NodeIdentity nodeIdentity = proc.getNodeIdentity();
+					String host = nodeIdentity.getName();
+					if(host != null) {
+						String pid = proc.getPID();
+						if(pid != null) {
+							String remotePid = pid+"@"+host;
+							list.add(remotePid);
+							duccLogger.debug(location, jobid, remotePid);
+						}
+					}
+				}
+			}
+			else {
+				duccLogger.debug(location, jobid, "map is empty");
+			}
+		}
+		else {
+			duccLogger.debug(location, jobid, "map is null");
+		}
+		return list;
+	}
+	
 	protected void monitor(OrchestratorStateDuccEvent duccEvent) {
 		String location = "monitor";
 		duccLogger.trace(location, jobid, "enter");
@@ -110,6 +141,8 @@ public class DuccWebMonitorManagedReserv
 			Map<DuccId, IDuccProcess> map = dwr.getProcessMap().getMap();
 			monitorInfo.code = getCode(map);
 			
+			monitorInfo.remotePids = getRemotePids(map);
+			
 			ArrayList<String> stateSequence = monitorInfo.stateSequence;
 			String state = dwr.getJobState().toString();
 			if(!stateSequence.contains(state)) {