private boolean isLogAggregationFinishedForNM(LogAggregationReport report) { return report.getLogAggregationStatus() == LogAggregationStatus.SUCCEEDED || report.getLogAggregationStatus() == LogAggregationStatus.FAILED; }
private void updateLogAggregationStatus(NodeId nodeId) { LogAggregationStatus status = this.logAggregationStatus.get(nodeId).getLogAggregationStatus(); if (status.equals(LogAggregationStatus.SUCCEEDED)) { this.logAggregationSucceed++; this.logAggregationStatus.entrySet().iterator(); it.hasNext();) { Map.Entry<NodeId, LogAggregationReport> entry = it.next(); if (entry.getValue().getLogAggregationStatus() .equals(LogAggregationStatus.SUCCEEDED)) { it.remove();
@Override public Map<NodeId, LogAggregationReport> getLogAggregationReportsForApp() { try { this.readLock.lock(); if (!isLogAggregationFinished() && isAppInFinalState(this) && systemClock.getTime() > this.logAggregationStartTime + this.logAggregationStatusTimeout) { for (Entry<NodeId, LogAggregationReport> output : logAggregationStatus.entrySet()) { if (!output.getValue().getLogAggregationStatus() .equals(LogAggregationStatus.TIME_OUT) && !output.getValue().getLogAggregationStatus() .equals(LogAggregationStatus.SUCCEEDED) && !output.getValue().getLogAggregationStatus() .equals(LogAggregationStatus.FAILED)) { output.getValue().setLogAggregationStatus( LogAggregationStatus.TIME_OUT); } } } return Collections.unmodifiableMap(logAggregationStatus); } finally { this.readLock.unlock(); } }
if (report.getDiagnosticMessage() != null && !report.getDiagnosticMessage().isEmpty()) { if (report.getLogAggregationStatus() == LogAggregationStatus.RUNNING ) { List<String> diagnostics = logAggregationDiagnosticsForNMs.get(nodeId); this.logAggregationStatus.get(nodeId).setDiagnosticMessage( StringUtils.join(diagnostics, "\n")); } else if (report.getLogAggregationStatus() == LogAggregationStatus.RUNNING_WITH_FAILURE) { List<String> failureMessages =
if (report.getLogAggregationStatus() != LogAggregationStatus.RUNNING || curReport.getLogAggregationStatus() != LogAggregationStatus.RUNNING_WITH_FAILURE) { if (curReport.getLogAggregationStatus() == LogAggregationStatus.TIME_OUT && report.getLogAggregationStatus() == LogAggregationStatus.RUNNING) { .getLogAggregationStatus());
int logRunningWithFailure = 0; for (Entry<NodeId, LogAggregationReport> report : reports.entrySet()) { switch (report.getValue().getLogAggregationStatus()) { case NOT_START: logNotStartCount++;
.entrySet()) { Assert.assertEquals(LogAggregationStatus.NOT_START, report.getValue() .getLogAggregationStatus()); if (report.getKey().equals(node1.getNodeID())) { Assert.assertEquals(LogAggregationStatus.RUNNING, report.getValue() .getLogAggregationStatus()); Assert.assertEquals(messageForNode1_1, report.getValue() .getDiagnosticMessage()); } else if (report.getKey().equals(node2.getNodeID())) { Assert.assertEquals(LogAggregationStatus.RUNNING, report.getValue() .getLogAggregationStatus()); Assert.assertEquals(messageForNode2_1, report.getValue() .getDiagnosticMessage()); if (report.getKey().equals(node1.getNodeID())) { Assert.assertEquals(LogAggregationStatus.RUNNING, report.getValue() .getLogAggregationStatus()); Assert.assertEquals( messageForNode1_1 + "\n" + messageForNode1_2, report } else if (report.getKey().equals(node2.getNodeID())) { Assert.assertEquals(LogAggregationStatus.RUNNING, report.getValue() .getLogAggregationStatus()); Assert.assertEquals(messageForNode2_1, report.getValue() .getDiagnosticMessage()); .entrySet()) { Assert.assertEquals(LogAggregationStatus.TIME_OUT, report.getValue()
LogAggregationStatus status = report.getValue() == null ? null : report.getValue() .getLogAggregationStatus(); String message = report.getValue() == null ? null : report.getValue()