Browse Source

YARN-8045. Reduce log output from container status calls. Contributed by Craig Condit

(cherry picked from commit 144a55f0e3ba302327baf2e98d1e07b953dcbbfd)
Eric Badger 5 năm trước cách đây
mục cha
commit
9aae72af84

+ 28 - 1
hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/java/org/apache/hadoop/yarn/server/nodemanager/containermanager/ContainerManagerImpl.java

@@ -1431,10 +1431,37 @@ public class ContainerManagerImpl extends CompositeService implements
       }
     }
     ContainerStatus containerStatus = container.cloneAndGetContainerStatus();
-    LOG.info("Returning " + containerStatus);
+    logContainerStatus("Returning ", containerStatus);
     return containerStatus;
   }
 
+  private void logContainerStatus(String prefix, ContainerStatus status) {
+    StringBuilder sb = new StringBuilder();
+    sb.append(prefix);
+    sb.append("ContainerStatus: [");
+    sb.append("ContainerId: ");
+    sb.append(status.getContainerId()).append(", ");
+    sb.append("ExecutionType: ");
+    sb.append(status.getExecutionType()).append(", ");
+    sb.append("State: ");
+    sb.append(status.getState()).append(", ");
+    sb.append("Capability: ");
+    sb.append(status.getCapability()).append(", ");
+    sb.append("Diagnostics: ");
+    sb.append(LOG.isDebugEnabled() ? status.getDiagnostics() : "...");
+    sb.append(", ");
+    sb.append("ExitStatus: ");
+    sb.append(status.getExitStatus()).append(", ");
+    sb.append("IP: ");
+    sb.append(status.getIPs()).append(", ");
+    sb.append("Host: ");
+    sb.append(status.getHost()).append(", ");
+    sb.append("ContainerSubState: ");
+    sb.append(status.getContainerSubState());
+    sb.append("]");
+    LOG.info(sb.toString());
+  }
+
   @Private
   @VisibleForTesting
   protected void authorizeGetAndStopContainerRequest(ContainerId containerId,