diff --git hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/QueueMetrics.java hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/QueueMetrics.java index 5447845..c98e5b2 100644 --- hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/QueueMetrics.java +++ hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/QueueMetrics.java @@ -126,6 +126,17 @@ static QueueMetrics forQueue(String queueName, Queue parent, enableUserMetrics, conf); } + // this method is here because we want these metrics to be seen when + // queue metrics is registered + public void initAppStatusMetrics() { + appsSubmitted.incr(0); + appsRunning.incr(0); + appsPending.incr(0); + appsCompleted.incr(0); + appsKilled.incr(0); + appsFailed.incr(0); + } + /** * Helper method to clear cache - used only for unit tests. */ @@ -156,6 +167,7 @@ static QueueMetrics forQueue(MetricsSystem ms, String queueName, ms.register( sourceName(queueName).toString(), "Metrics for queue: " + queueName, metrics); + metrics.initAppStatusMetrics(); } queueMetrics.put(queueName, metrics); }