YARN-7067. [YARN-3926] Optimize ResourceType information display in UI. Contributed by Wangda Tan.
(cherry picked from commit a333ba54e3f5a1ca57b0fc94bfd008f3cbd5b14b) Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/5dd008ca Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/5dd008ca Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/5dd008ca Branch: refs/heads/branch-3.0 Commit: 5dd008ca2e9b03c606bf24cfb960f372efbbe752 Parents: 605fcde Author: Sunil G <sun...@apache.org> Authored: Tue Aug 22 16:59:29 2017 +0530 Committer: Daniel Templeton <templ...@apache.org> Committed: Tue Oct 31 15:06:17 2017 -0700 ---------------------------------------------------------------------- .../apache/hadoop/yarn/api/records/ResourceTypeInfo.java | 7 +++++-- .../resourcemanager/webapp/MetricsOverviewTable.java | 11 ++++++++--- 2 files changed, 13 insertions(+), 5 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/hadoop/blob/5dd008ca/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-api/src/main/java/org/apache/hadoop/yarn/api/records/ResourceTypeInfo.java ---------------------------------------------------------------------- diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-api/src/main/java/org/apache/hadoop/yarn/api/records/ResourceTypeInfo.java b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-api/src/main/java/org/apache/hadoop/yarn/api/records/ResourceTypeInfo.java index 6cb470c..d85cf0c 100644 --- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-api/src/main/java/org/apache/hadoop/yarn/api/records/ResourceTypeInfo.java +++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-api/src/main/java/org/apache/hadoop/yarn/api/records/ResourceTypeInfo.java @@ -153,8 +153,11 @@ public abstract class ResourceTypeInfo implements Comparable<ResourceTypeInfo> { @Override public String toString() { - return "name: " + this.getName() + ", units: " + this.getDefaultUnit() - + ", type: " + getResourceType(); + StringBuilder sb = new StringBuilder(); + sb.append("<name=").append(this.getName()).append(" default-unit=").append( + this.getDefaultUnit()).append(" type=" + getResourceType()).append( + ">"); + return sb.toString(); } @Override http://git-wip-us.apache.org/repos/asf/hadoop/blob/5dd008ca/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/webapp/MetricsOverviewTable.java ---------------------------------------------------------------------- diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/webapp/MetricsOverviewTable.java b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/webapp/MetricsOverviewTable.java index f6b1a94..806b636 100644 --- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/webapp/MetricsOverviewTable.java +++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/webapp/MetricsOverviewTable.java @@ -19,17 +19,21 @@ package org.apache.hadoop.yarn.server.resourcemanager.webapp; import org.apache.hadoop.util.StringUtils; +import org.apache.hadoop.yarn.api.records.ResourceTypeInfo; import org.apache.hadoop.yarn.server.resourcemanager.ResourceManager; import org.apache.hadoop.yarn.server.resourcemanager.webapp.dao.ClusterMetricsInfo; import org.apache.hadoop.yarn.server.resourcemanager.webapp.dao.SchedulerInfo; import org.apache.hadoop.yarn.server.resourcemanager.webapp.dao.UserMetricsInfo; +import org.apache.hadoop.yarn.util.resource.ResourceUtils; import org.apache.hadoop.yarn.webapp.hamlet2.Hamlet; import org.apache.hadoop.yarn.webapp.hamlet2.Hamlet.DIV; import org.apache.hadoop.yarn.webapp.view.HtmlBlock; import com.google.inject.Inject; +import java.util.Arrays; + /** * Provides an table with an overview of many cluster wide metrics and if * per user metrics are enabled it will show an overview of what the @@ -168,8 +172,8 @@ public class MetricsOverviewTable extends HtmlBlock { } } - - SchedulerInfo schedulerInfo=new SchedulerInfo(this.rm); + + SchedulerInfo schedulerInfo = new SchedulerInfo(this.rm); div.h3("Scheduler Metrics"). table("#schedulermetricsoverview"). @@ -186,7 +190,8 @@ public class MetricsOverviewTable extends HtmlBlock { tbody().$class("ui-widget-content"). tr(). td(String.valueOf(schedulerInfo.getSchedulerType())). - td(String.valueOf(schedulerInfo.getSchedulerResourceTypes())). + td(String.valueOf(Arrays.toString(ResourceUtils.getResourcesTypeInfo() + .toArray(new ResourceTypeInfo[0])))). td(schedulerInfo.getMinAllocation().toString()). td(schedulerInfo.getMaxAllocation().toString()). td(String.valueOf(schedulerInfo.getMaxClusterLevelAppPriority())). --------------------------------------------------------------------- To unsubscribe, e-mail: common-commits-unsubscr...@hadoop.apache.org For additional commands, e-mail: common-commits-h...@hadoop.apache.org