YARN-7067. [YARN-3926] Optimize ResourceType information display in UI. Contributed by Wangda Tan.
(cherry picked from commit a333ba54e3
)
Conflicts:
hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/webapp/MetricsOverviewTable.java
This commit is contained in:
parent
1f05fa041a
commit
74bb2d6ae7
|
@ -153,8 +153,11 @@ public abstract class ResourceTypeInfo implements Comparable<ResourceTypeInfo> {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String toString() {
|
public String toString() {
|
||||||
return "name: " + this.getName() + ", units: " + this.getDefaultUnit()
|
StringBuilder sb = new StringBuilder();
|
||||||
+ ", type: " + getResourceType();
|
sb.append("<name=").append(this.getName()).append(" default-unit=").append(
|
||||||
|
this.getDefaultUnit()).append(" type=" + getResourceType()).append(
|
||||||
|
">");
|
||||||
|
return sb.toString();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -19,17 +19,21 @@
|
||||||
package org.apache.hadoop.yarn.server.resourcemanager.webapp;
|
package org.apache.hadoop.yarn.server.resourcemanager.webapp;
|
||||||
|
|
||||||
import org.apache.hadoop.util.StringUtils;
|
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.ResourceManager;
|
||||||
import org.apache.hadoop.yarn.server.resourcemanager.webapp.dao.ClusterMetricsInfo;
|
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.SchedulerInfo;
|
||||||
import org.apache.hadoop.yarn.server.resourcemanager.webapp.dao.UserMetricsInfo;
|
import org.apache.hadoop.yarn.server.resourcemanager.webapp.dao.UserMetricsInfo;
|
||||||
|
|
||||||
|
import org.apache.hadoop.yarn.util.resource.ResourceUtils;
|
||||||
import org.apache.hadoop.yarn.webapp.hamlet.Hamlet;
|
import org.apache.hadoop.yarn.webapp.hamlet.Hamlet;
|
||||||
import org.apache.hadoop.yarn.webapp.hamlet.Hamlet.DIV;
|
import org.apache.hadoop.yarn.webapp.hamlet.Hamlet.DIV;
|
||||||
import org.apache.hadoop.yarn.webapp.view.HtmlBlock;
|
import org.apache.hadoop.yarn.webapp.view.HtmlBlock;
|
||||||
|
|
||||||
import com.google.inject.Inject;
|
import com.google.inject.Inject;
|
||||||
|
|
||||||
|
import java.util.Arrays;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Provides an table with an overview of many cluster wide metrics and if
|
* 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
|
* 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").
|
div.h3("Scheduler Metrics").
|
||||||
table("#schedulermetricsoverview").
|
table("#schedulermetricsoverview").
|
||||||
|
@ -186,7 +190,8 @@ public class MetricsOverviewTable extends HtmlBlock {
|
||||||
tbody().$class("ui-widget-content").
|
tbody().$class("ui-widget-content").
|
||||||
tr().
|
tr().
|
||||||
td(String.valueOf(schedulerInfo.getSchedulerType())).
|
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.getMinAllocation().toString()).
|
||||||
td(schedulerInfo.getMaxAllocation().toString()).
|
td(schedulerInfo.getMaxAllocation().toString()).
|
||||||
td(String.valueOf(schedulerInfo.getMaxClusterLevelAppPriority())).
|
td(String.valueOf(schedulerInfo.getMaxClusterLevelAppPriority())).
|
||||||
|
|
Loading…
Reference in New Issue