diff --git hadoop-yarn-project/hadoop-yarn/hadoop-yarn-client/src/main/java/org/apache/hadoop/yarn/client/cli/LogsCLI.java hadoop-yarn-project/hadoop-yarn/hadoop-yarn-client/src/main/java/org/apache/hadoop/yarn/client/cli/LogsCLI.java index 8407b19..4125a81 100644 --- hadoop-yarn-project/hadoop-yarn/hadoop-yarn-client/src/main/java/org/apache/hadoop/yarn/client/cli/LogsCLI.java +++ hadoop-yarn-project/hadoop-yarn/hadoop-yarn-client/src/main/java/org/apache/hadoop/yarn/client/cli/LogsCLI.java @@ -430,6 +430,9 @@ private boolean fetchAllLogFiles(String[] logFiles, String[] logFilesRegex) { try { JSONArray array = new JSONArray(); JSONObject json = response.getEntity(JSONObject.class); + if (!json.has("containerLogsInfo")) { + return logFileInfos; + } Object logsInfoObj = json.get("containerLogsInfo"); if (logsInfoObj instanceof JSONObject) { array.put((JSONObject)logsInfoObj); @@ -443,6 +446,9 @@ private boolean fetchAllLogFiles(String[] logFiles, String[] logFilesRegex) { JSONObject log = array.getJSONObject(i); String aggregateType = log.has("logAggregationType") ? log.getString("logAggregationType") : "N/A"; + if (!log.has("containerLogInfo")) { + continue; + } Object ob = log.get("containerLogInfo"); if (ob instanceof JSONArray) { JSONArray obArray = (JSONArray)ob;