YARN-5223. Container line in yarn logs output for a live application should include the hostname for the container. Contributed by Xuan Gong.

This commit is contained in:
Varun Vasudev 2016-06-15 12:42:44 +05:30
parent d6284428e8
commit 25064fb2fb
3 changed files with 7 additions and 3 deletions

View File

@ -393,7 +393,8 @@ public void printContainerLogsFromRunningApplication(Configuration conf,
newOptions.setLogTypes(matchedFiles); newOptions.setLogTypes(matchedFiles);
Client webServiceClient = Client.create(); Client webServiceClient = Client.create();
String containerString = "\n\nContainer: " + containerIdStr; String containerString = "\n\nContainer: " + containerIdStr + " on "
+ nodeId;
out.println(containerString); out.println(containerString);
out.println(StringUtils.repeat("=", containerString.length())); out.println(StringUtils.repeat("=", containerString.length()));

View File

@ -463,6 +463,8 @@ public ContainerReport getContainerReport(String containerIdStr)
"Hello container_0_0001_01_000003 in syslog!")); "Hello container_0_0001_01_000003 in syslog!"));
assertTrue(sysOutStream.toString().contains( assertTrue(sysOutStream.toString().contains(
"Hello container_0_0001_01_000003 in stdout!")); "Hello container_0_0001_01_000003 in stdout!"));
assertTrue(sysOutStream.toString().contains(
containerId3 + " on " + LogAggregationUtils.getNodeString(nodeId)));
sysOutStream.reset(); sysOutStream.reset();
fs.delete(new Path(remoteLogRootDir), true); fs.delete(new Path(remoteLogRootDir), true);

View File

@ -153,7 +153,8 @@ public int dumpAContainersLogsForALogType(ContainerLogsRequest options,
AggregatedLogFormat.LogReader reader = null; AggregatedLogFormat.LogReader reader = null;
PrintStream out = createPrintStream(localDir, fileName, containerId); PrintStream out = createPrintStream(localDir, fileName, containerId);
try { try {
String containerString = "\n\nContainer: " + containerId; String containerString = "\n\nContainer: " + containerId + " on "
+ thisNodeFile.getPath().getName();
out.println(containerString); out.println(containerString);
out.println(StringUtils.repeat("=", containerString.length())); out.println(StringUtils.repeat("=", containerString.length()));
reader = reader =
@ -220,7 +221,7 @@ public int dumpAContainersLogsForALogTypeWithoutNodeId(
thisNodeFile.getPath()); thisNodeFile.getPath());
out = createPrintStream(localDir, thisNodeFile.getPath().getName(), out = createPrintStream(localDir, thisNodeFile.getPath().getName(),
containerId); containerId);
out.println(containerId); out.println(containerId + " on " + thisNodeFile.getPath().getName());
out.println(StringUtils.repeat("=", containerId.length())); out.println(StringUtils.repeat("=", containerId.length()));
if (logType == null || logType.isEmpty()) { if (logType == null || logType.isEmpty()) {
if (dumpAContainerLogs(containerId, reader, out, if (dumpAContainerLogs(containerId, reader, out,