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.getResourcePreempted().getMemory(); numNonAMContainerPreempted = appMetrics.getNumNonAMContainersPreempted(); preemptedResourceVCores = appMetrics.getResourcePreempted().getVirtualCores();
appMetrics.getResourcePreempted().getMemory(); numNonAMContainerPreempted = appMetrics.getNumNonAMContainersPreempted(); preemptedResourceVCores = appMetrics.getResourcePreempted().getVirtualCores();
._("Total Number of Non-AM Containers Preempted:", appMetrics == null ? "N/A" : appMetrics.getNumNonAMContainersPreempted()) ._("Total Number of AM Containers Preempted:", appMetrics == null ? "N/A"
._("Total Number of Non-AM Containers Preempted:", appMetrics == null ? "N/A" : appMetrics.getNumNonAMContainersPreempted()) ._("Total Number of AM Containers Preempted:", appMetrics == null ? "N/A"
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(); preemptedResourceVCores = appMetrics.getResourcePreempted().getVirtualCores();
.__("Total Number of Non-AM Containers Preempted:", appMetrics == null ? "N/A" : appMetrics.getNumNonAMContainersPreempted()) .__("Total Number of AM Containers Preempted:", appMetrics == null ? "N/A"
.add("vcoreSeconds", metrics.getVcoreSeconds()) .add("preemptedAMContainers", metrics.getNumAMContainersPreempted()) .add("preemptedNonAMContainers", metrics.getNumNonAMContainersPreempted()) .add("preemptedResources", metrics.getResourcePreempted()) .add("applicationType", app.getApplicationType());
.add("vcoreSeconds", metrics.getVcoreSeconds()) .add("preemptedAMContainers", metrics.getNumAMContainersPreempted()) .add("preemptedNonAMContainers", metrics.getNumNonAMContainersPreempted()) .add("preemptedResources", metrics.getResourcePreempted()) .add("applicationType", app.getApplicationType());
.add("preemptedVcoreSeconds", metrics.getPreemptedVcoreSeconds()) .add("preemptedAMContainers", metrics.getNumAMContainersPreempted()) .add("preemptedNonAMContainers", metrics.getNumNonAMContainersPreempted()) .add("preemptedResources", metrics.getResourcePreempted()) .add("applicationType", app.getApplicationType())
preemptedResourceVCores); assertEquals("numNonAMContainerPreempted doesn't match", app .getRMAppMetrics().getNumNonAMContainersPreempted(), numNonAMContainerPreempted); assertEquals("numAMContainerPreempted doesn't match", app
preemptedResourceVCores); assertEquals("numNonAMContainerPreempted doesn't match", app .getRMAppMetrics().getNumNonAMContainersPreempted(), numNonAMContainerPreempted); assertEquals("numAMContainerPreempted doesn't match", app
getXmlInt(info, "preemptedResourceVCores")); assertEquals("numNonAMContainerPreempted doesn't match", app .getRMAppMetrics().getNumNonAMContainersPreempted(), getXmlInt(info, "numNonAMContainerPreempted")); assertEquals("numAMContainerPreempted doesn't match", app
info.getInt("preemptedResourceVCores")); assertEquals("numNonAMContainerPreempted doesn't match", app.getRMAppMetrics().getNumNonAMContainersPreempted(), info.getInt("numNonAMContainerPreempted")); assertEquals("numAMContainerPreempted doesn't match",