提交 4f8884de 编写于 作者: wu-sheng's avatar wu-sheng

[#558] Support new memory pool name of java8

上级 c7aff123
......@@ -29,27 +29,27 @@ public class CMSCollectorModule extends MemoryPoolModule {
super(beans);
}
@Override protected String getPermName() {
return "CMS Perm Gen";
@Override protected String[] getPermNames() {
return new String[] {"CMS Perm Gen"};
}
@Override protected String getCodeCacheName() {
return "Code Cache";
@Override protected String[] getCodeCacheNames() {
return new String[] {"Code Cache"};
}
@Override protected String getEdenName() {
return "Par Eden Space";
@Override protected String[] getEdenNames() {
return new String[] {"Par Eden Space"};
}
@Override protected String getOldName() {
return "CMS Old Gen";
@Override protected String[] getOldNames() {
return new String[] {"CMS Old Gen"};
}
@Override protected String getSurvivorName() {
return "Par Survivor Space";
@Override protected String[] getSurvivorNames() {
return new String[] {"Par Survivor Space"};
}
@Override protected String getMetaspaceName() {
return "Metaspace";
@Override protected String[] getMetaspaceNames() {
return new String[] {"Metaspace"};
}
}
......@@ -29,27 +29,27 @@ public class G1CollectorModule extends MemoryPoolModule {
super(beans);
}
@Override protected String getPermName() {
return "G1 Perm Gen";
@Override protected String[] getPermNames() {
return new String[] {"G1 Perm Gen"};
}
@Override protected String getCodeCacheName() {
return "Code Cache";
@Override protected String[] getCodeCacheNames() {
return new String[] {"Code Cache"};
}
@Override protected String getEdenName() {
return "G1 Eden Space";
@Override protected String[] getEdenNames() {
return new String[] {"G1 Eden Space"};
}
@Override protected String getOldName() {
return "G1 Old Gen";
@Override protected String[] getOldNames() {
return new String[] {"G1 Old Gen"};
}
@Override protected String getSurvivorName() {
return "G1 Survivor Space";
@Override protected String[] getSurvivorNames() {
return new String[] {"G1 Survivor Space"};
}
@Override protected String getMetaspaceName() {
return "Metaspace";
@Override protected String[] getMetaspaceNames() {
return new String[] {"Metaspace"};
}
}
......@@ -40,18 +40,18 @@ public abstract class MemoryPoolModule implements MemoryPoolMetricAccessor {
List<MemoryPool> poolList = new LinkedList<MemoryPool>();
for (MemoryPoolMXBean bean : beans) {
String name = bean.getName();
PoolType type = null;
if (name.equals(getCodeCacheName())) {
PoolType type;
if (contains(getCodeCacheNames(), name)) {
type = PoolType.CODE_CACHE_USAGE;
} else if (name.equals(getEdenName())) {
} else if (contains(getEdenNames(), name)) {
type = PoolType.NEWGEN_USAGE;
} else if (name.equals(getOldName())) {
} else if (contains(getOldNames(), name)) {
type = PoolType.OLDGEN_USAGE;
} else if (name.equals(getSurvivorName())) {
} else if (contains(getSurvivorNames(), name)) {
type = PoolType.SURVIVOR_USAGE;
} else if (name.equals(getMetaspaceName())) {
} else if (contains(getMetaspaceNames(), name)) {
type = PoolType.METASPACE_USAGE;
} else if (name.equals(getPermName())) {
} else if (contains(getPermNames(), name)) {
type = PoolType.PERMGEN_USAGE;
} else {
continue;
......@@ -68,15 +68,24 @@ public abstract class MemoryPoolModule implements MemoryPoolMetricAccessor {
return poolList;
}
protected abstract String getPermName();
private boolean contains(String[] possibleNames, String name) {
for (String possibleName : possibleNames) {
if (name.equals(possibleName)) {
return true;
}
}
return false;
}
protected abstract String[] getPermNames();
protected abstract String getCodeCacheName();
protected abstract String[] getCodeCacheNames();
protected abstract String getEdenName();
protected abstract String[] getEdenNames();
protected abstract String getOldName();
protected abstract String[] getOldNames();
protected abstract String getSurvivorName();
protected abstract String[] getSurvivorNames();
protected abstract String getMetaspaceName();
protected abstract String[] getMetaspaceNames();
}
......@@ -30,27 +30,27 @@ public class ParallelCollectorModule extends MemoryPoolModule {
super(beans);
}
@Override protected String getPermName() {
return "PS Perm Gen";
@Override protected String[] getPermNames() {
return new String[] {"PS Perm Gen", "Compressed Class Space"};
}
@Override protected String getCodeCacheName() {
return "Code Cache";
@Override protected String[] getCodeCacheNames() {
return new String[] {"Code Cache"};
}
@Override protected String getEdenName() {
return "PS Eden Space";
@Override protected String[] getEdenNames() {
return new String[] {"PS Eden Space"};
}
@Override protected String getOldName() {
return "PS Old Gen";
@Override protected String[] getOldNames() {
return new String[] {"PS Old Gen"};
}
@Override protected String getSurvivorName() {
return "PS Survivor Space";
@Override protected String[] getSurvivorNames() {
return new String[] {"PS Survivor Space"};
}
@Override protected String getMetaspaceName() {
return "Metaspace";
@Override protected String[] getMetaspaceNames() {
return new String[] {"Metaspace"};
}
}
......@@ -29,27 +29,27 @@ public class SerialCollectorModule extends MemoryPoolModule {
super(beans);
}
@Override protected String getPermName() {
return "Perm Gen";
@Override protected String[] getPermNames() {
return new String[] {"Perm Gen"};
}
@Override protected String getCodeCacheName() {
return "Code Cache";
@Override protected String[] getCodeCacheNames() {
return new String[] {"Code Cache"};
}
@Override protected String getEdenName() {
return "Eden Space";
@Override protected String[] getEdenNames() {
return new String[] {"Eden Space"};
}
@Override protected String getOldName() {
return "Tenured Gen";
@Override protected String[] getOldNames() {
return new String[] {"Tenured Gen"};
}
@Override protected String getSurvivorName() {
return "Survivor Space";
@Override protected String[] getSurvivorNames() {
return new String[] {"Survivor Space"};
}
@Override protected String getMetaspaceName() {
return "Metaspace";
@Override protected String[] getMetaspaceNames() {
return new String[] {"Metaspace"};
}
}
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册