You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@uima.apache.org by cw...@apache.org on 2014/04/11 17:14:51 UTC
svn commit: r1586680 - in
/uima/sandbox/uima-ducc/trunk/uima-ducc-agent/src/main/java/org/apache/uima/ducc/agent/launcher:
CGroupsManager.java DuccCommandExecutor.java
Author: cwiklik
Date: Fri Apr 11 15:14:51 2014
New Revision: 1586680
URL: http://svn.apache.org/r1586680
Log:
UIMA-3739 added more logging to the code path involved in launching a process
Modified:
uima/sandbox/uima-ducc/trunk/uima-ducc-agent/src/main/java/org/apache/uima/ducc/agent/launcher/CGroupsManager.java
uima/sandbox/uima-ducc/trunk/uima-ducc-agent/src/main/java/org/apache/uima/ducc/agent/launcher/DuccCommandExecutor.java
Modified: uima/sandbox/uima-ducc/trunk/uima-ducc-agent/src/main/java/org/apache/uima/ducc/agent/launcher/CGroupsManager.java
URL: http://svn.apache.org/viewvc/uima/sandbox/uima-ducc/trunk/uima-ducc-agent/src/main/java/org/apache/uima/ducc/agent/launcher/CGroupsManager.java?rev=1586680&r1=1586679&r2=1586680&view=diff
==============================================================================
--- uima/sandbox/uima-ducc/trunk/uima-ducc-agent/src/main/java/org/apache/uima/ducc/agent/launcher/CGroupsManager.java (original)
+++ uima/sandbox/uima-ducc/trunk/uima-ducc-agent/src/main/java/org/apache/uima/ducc/agent/launcher/CGroupsManager.java Fri Apr 11 15:14:51 2014
@@ -342,6 +342,7 @@ public class CGroupsManager {
boolean useDuccSpawn) throws Exception {
try {
+ agentLogger.info("createContainer", null, "Creating CGroup Container:" + containerId);
String[] command = new String[] { cgroupUtilsDir+"/cgcreate", "-t",
"ducc", "-a", "ducc", "-g",
@@ -460,21 +461,33 @@ public class CGroupsManager {
String c_launcher_path = Utils.resolvePlaceholderIfExists(
System.getProperty("ducc.agent.launcher.ducc_spawn_path"),
System.getProperties());
-
+ StringBuffer sb = new StringBuffer();
+
if (useDuccSpawn && c_launcher_path != null) {
commandLine = new String[4 + command.length];
commandLine[0] = c_launcher_path;
+ sb.append(c_launcher_path).append(" ");
commandLine[1] = "-u";
+ sb.append("-u ");
commandLine[2] = userId;
+ sb.append(userId);
commandLine[3] = "--";
-
+ sb.append(" -- ");
int j = 0;
for (int i = 4; i < commandLine.length; i++) {
+ sb.append(command[j]).append(" ");
commandLine[i] = command[j++];
}
} else {
commandLine = command;
+ if ( command != null ) {
+ for (int i = 0; i < command.length; i++) {
+ sb.append(command[i]).append(" ");
+ }
+ }
}
+ agentLogger.info("launchCommand", null, "Launching Process - Commandline:"+sb.toString());
+
ProcessBuilder processLauncher = new ProcessBuilder();
processLauncher.command(commandLine);
processLauncher.redirectErrorStream();
@@ -485,9 +498,12 @@ public class CGroupsManager {
process.getInputStream());
reader = new BufferedReader(in);
String line;
+ agentLogger.info("launchCommand", null, "Consuming Process Streams");
while ((line = reader.readLine()) != null) {
agentLogger.info("launchCommand", null, ">>>>" + line);
}
+ agentLogger.info("launchCommand", null, "Waiting for Process to Exit");
+
int retCode = process.waitFor();
return retCode;
Modified: uima/sandbox/uima-ducc/trunk/uima-ducc-agent/src/main/java/org/apache/uima/ducc/agent/launcher/DuccCommandExecutor.java
URL: http://svn.apache.org/viewvc/uima/sandbox/uima-ducc/trunk/uima-ducc-agent/src/main/java/org/apache/uima/ducc/agent/launcher/DuccCommandExecutor.java?rev=1586680&r1=1586679&r2=1586680&view=diff
==============================================================================
--- uima/sandbox/uima-ducc/trunk/uima-ducc-agent/src/main/java/org/apache/uima/ducc/agent/launcher/DuccCommandExecutor.java (original)
+++ uima/sandbox/uima-ducc/trunk/uima-ducc-agent/src/main/java/org/apache/uima/ducc/agent/launcher/DuccCommandExecutor.java Fri Apr 11 15:14:51 2014
@@ -143,8 +143,9 @@ public class DuccCommandExecutor extends
// is created for the reservation and we co-locate as many JDs as we can fit in it.
//String containerId = ((ManagedProcess) managedProcess).getWorkDuccId()+"."+duccProcess.getCGroup().getId().getFriendly();
String containerId = getContainerId();
- logger.info(methodName, null, "Creating CGroup with ID:"+containerId);
+ logger.info(methodName, null, "Checking for CGroup Existance with ID:"+containerId);
if ( !agent.cgroupsManager.cgroupExists(agent.cgroupsManager.getDuccCGroupBaseDir()+"/"+containerId) ) {
+ logger.info(methodName, null, "No CGroup with ID:"+containerId+" Found");
boolean failed = false;
// create cgroup container for JDs
try {