private Set<TimelineMetric> getTimelinelineAppMetrics( RMAppMetrics appMetrics, long timestamp) { Set<TimelineMetric> entityMetrics = new HashSet<TimelineMetric>(); entityMetrics.add(getTimelineMetric( ApplicationMetricsConstants.APP_CPU_METRICS, timestamp, appMetrics.getVcoreSeconds())); entityMetrics.add(getTimelineMetric( ApplicationMetricsConstants.APP_MEM_METRICS, timestamp, appMetrics.getMemorySeconds())); entityMetrics.add(getTimelineMetric( ApplicationMetricsConstants.APP_MEM_PREEMPT_METRICS, timestamp, appMetrics.getPreemptedMemorySeconds())); entityMetrics.add(getTimelineMetric( ApplicationMetricsConstants.APP_CPU_PREEMPT_METRICS, timestamp, appMetrics.getPreemptedVcoreSeconds())); entityMetrics.add(getTimelineMetric( ApplicationMetricsConstants.APP_RESOURCE_PREEMPTED_CPU, timestamp, appMetrics.getResourcePreempted().getVirtualCores())); entityMetrics.add(getTimelineMetric( ApplicationMetricsConstants.APP_RESOURCE_PREEMPTED_MEM, timestamp, appMetrics.getResourcePreempted().getMemorySize())); entityMetrics.add(getTimelineMetric( ApplicationMetricsConstants.APP_NON_AM_CONTAINER_PREEMPTED, timestamp, appMetrics.getNumNonAMContainersPreempted())); entityMetrics.add(getTimelineMetric( ApplicationMetricsConstants.APP_AM_CONTAINER_PREEMPTED, timestamp, appMetrics.getNumAMContainersPreempted())); return entityMetrics; }
appMetrics.getNumAMContainersPreempted(); preemptedResourceMB = appMetrics.getResourcePreempted().getMemory();
appMetrics.getNumAMContainersPreempted(); preemptedResourceMB = appMetrics.getResourcePreempted().getMemory();
._("Total Number of AM Containers Preempted:", appMetrics == null ? "N/A" : appMetrics.getNumAMContainersPreempted()) ._("Resource Preempted from Current Attempt:", attemptResourcePreempted)
._("Total Number of AM Containers Preempted:", appMetrics == null ? "N/A" : appMetrics.getNumAMContainersPreempted()) ._("Resource Preempted from Current Attempt:", attemptResourcePreempted)
private void waitForAppPreemptionInfo(RMApp app, Resource preempted, int numAMPreempted, int numTaskPreempted, Resource currentAttemptPreempted, boolean currentAttemptAMPreempted, int numLatestAttemptTaskPreempted) throws InterruptedException { while (true) { RMAppMetrics appPM = app.getRMAppMetrics(); RMAppAttemptMetrics attemptPM = app.getCurrentAppAttempt().getRMAppAttemptMetrics(); if (appPM.getResourcePreempted().equals(preempted) && appPM.getNumAMContainersPreempted() == numAMPreempted && appPM.getNumNonAMContainersPreempted() == numTaskPreempted && attemptPM.getResourcePreempted().equals(currentAttemptPreempted) && app.getCurrentAppAttempt().getRMAppAttemptMetrics() .getIsPreempted() == currentAttemptAMPreempted && attemptPM.getNumNonAMContainersPreempted() == numLatestAttemptTaskPreempted) { return; } Thread.sleep(500); } }
private void waitForAppPreemptionInfo(RMApp app, Resource preempted, int numAMPreempted, int numTaskPreempted, Resource currentAttemptPreempted, boolean currentAttemptAMPreempted, int numLatestAttemptTaskPreempted) throws InterruptedException { while (true) { RMAppMetrics appPM = app.getRMAppMetrics(); RMAppAttemptMetrics attemptPM = app.getCurrentAppAttempt().getRMAppAttemptMetrics(); if (appPM.getResourcePreempted().equals(preempted) && appPM.getNumAMContainersPreempted() == numAMPreempted && appPM.getNumNonAMContainersPreempted() == numTaskPreempted && attemptPM.getResourcePreempted().equals(currentAttemptPreempted) && app.getCurrentAppAttempt().getRMAppAttemptMetrics() .getIsPreempted() == currentAttemptAMPreempted && attemptPM.getNumNonAMContainersPreempted() == numLatestAttemptTaskPreempted) { return; } Thread.sleep(500); } }
numAMContainerPreempted = appMetrics.getNumAMContainersPreempted(); preemptedResourceMB = appMetrics.getResourcePreempted().getMemorySize(); numNonAMContainerPreempted = appMetrics.getNumNonAMContainersPreempted();
.__("Total Number of AM Containers Preempted:", appMetrics == null ? "N/A" : appMetrics.getNumAMContainersPreempted()) .__("Resource Preempted from Current Attempt:", attemptResourcePreempted)
.add("memorySeconds", metrics.getMemorySeconds()) .add("vcoreSeconds", metrics.getVcoreSeconds()) .add("preemptedAMContainers", metrics.getNumAMContainersPreempted()) .add("preemptedNonAMContainers", metrics.getNumNonAMContainersPreempted()) .add("preemptedResources", metrics.getResourcePreempted())
.add("memorySeconds", metrics.getMemorySeconds()) .add("vcoreSeconds", metrics.getVcoreSeconds()) .add("preemptedAMContainers", metrics.getNumAMContainersPreempted()) .add("preemptedNonAMContainers", metrics.getNumNonAMContainersPreempted()) .add("preemptedResources", metrics.getResourcePreempted())
.add("preemptedMemorySeconds", metrics.getPreemptedMemorySeconds()) .add("preemptedVcoreSeconds", metrics.getPreemptedVcoreSeconds()) .add("preemptedAMContainers", metrics.getNumAMContainersPreempted()) .add("preemptedNonAMContainers", metrics.getNumNonAMContainersPreempted()) .add("preemptedResources", metrics.getResourcePreempted())
numNonAMContainerPreempted); assertEquals("numAMContainerPreempted doesn't match", app .getRMAppMetrics().getNumAMContainersPreempted(), numAMContainerPreempted);
numNonAMContainerPreempted); assertEquals("numAMContainerPreempted doesn't match", app .getRMAppMetrics().getNumAMContainersPreempted(), numAMContainerPreempted); assertEquals("Log aggregation Status doesn't match", app
getXmlInt(info, "numNonAMContainerPreempted")); assertEquals("numAMContainerPreempted doesn't match", app .getRMAppMetrics().getNumAMContainersPreempted(), getXmlInt(info, "numAMContainerPreempted")); assertEquals("Log aggregation Status doesn't match", app
info.getInt("numNonAMContainerPreempted")); assertEquals("numAMContainerPreempted doesn't match", app.getRMAppMetrics().getNumAMContainersPreempted(), info.getInt("numAMContainerPreempted")); assertEquals("Log aggregation Status doesn't match",