Mercurial > hg > heapstats
changeset 192:1374722a0d15
Bug 3249: Accumulated GC time should be show in SnapShot summary tab
Reviewed-by: ykubota
https://github.com/HeapStats/heapstats/pull/52
author | Yasumasa Suenaga <yasuenag@gmail.com> |
---|---|
date | Mon, 05 Dec 2016 12:26:40 +0900 |
parents | e91a7dea56df |
children | d70bd5dab532 |
files | ChangeLog analyzer/core/src/main/java/jp/co/ntt/oss/heapstats/container/snapshot/SummaryData.java analyzer/fx/src/main/java/jp/co/ntt/oss/heapstats/plugin/builtin/snapshot/tabs/SummaryController.java analyzer/fx/src/main/resources/snapshotResources_en.properties analyzer/fx/src/main/resources/snapshotResources_ja.properties |
diffstat | 5 files changed, 27 insertions(+), 2 deletions(-) [+] |
line wrap: on
line diff
--- a/ChangeLog Mon Dec 05 12:25:50 2016 +0900 +++ b/ChangeLog Mon Dec 05 12:26:40 2016 +0900 @@ -1,6 +1,7 @@ 2016-12-05 Yasumasa Suenaga <yasuenag@gmail.com> * Bug 3246: HeapStats Analyzer should show popup window in SnapShot summary + * Bug 3249: Accumulated GC time should be show in SnapShot summary tab 2016-12-03 Yasumasa Suenaga <yasuenag@gmail.com>
--- a/analyzer/core/src/main/java/jp/co/ntt/oss/heapstats/container/snapshot/SummaryData.java Mon Dec 05 12:25:50 2016 +0900 +++ b/analyzer/core/src/main/java/jp/co/ntt/oss/heapstats/container/snapshot/SummaryData.java Mon Dec 05 12:26:40 2016 +0900 @@ -70,6 +70,8 @@ private final long latestMetaspaceUsage; + private final long totalGCTime; + private final long maxGCTime; private final long maxSnapshotSize; @@ -118,6 +120,7 @@ .collect(MaxSummaryStatistics::new, MaxSummaryStatistics::accept, MaxSummaryStatistics::combine); + totalGCTime = statistics.getTotalGCTime(); maxGCTime = statistics.getMaxGCTime(); maxSnapshotSize = statistics.getMaxSnapshotSize(); maxEntryCount = statistics.getMaxEntryCount(); @@ -169,6 +172,15 @@ } /** + * Get total Full GC time. + * + * @return Total GC time + */ + public long getTotalGCTime() { + return totalGCTime; + } + + /** * Get maximum value of GC time. * * @return Maximum value of GC time @@ -206,6 +218,8 @@ private class MaxSummaryStatistics { + private long totalGCTime; + private long maxGCTime; private long maxSnapshotSize; @@ -213,23 +227,30 @@ private long maxEntryCount; public MaxSummaryStatistics() { + totalGCTime = 0; maxGCTime = 0; maxSnapshotSize = 0; maxEntryCount = 0; } public void accept(SnapShotHeader header) { + totalGCTime += header.getGcTime(); maxGCTime = Math.max(maxGCTime, header.getGcTime()); maxSnapshotSize = Math.max(maxSnapshotSize, header.getSnapShotSize()); maxEntryCount = Math.max(maxEntryCount, header.getNumEntries()); } public void combine(MaxSummaryStatistics other) { + totalGCTime += other.totalGCTime; maxGCTime = Math.max(maxGCTime, other.maxGCTime); maxSnapshotSize = Math.max(maxSnapshotSize, other.maxSnapshotSize); maxEntryCount = Math.max(maxEntryCount, other.maxEntryCount); } + public long getTotalGCTime() { + return totalGCTime; + } + public long getMaxGCTime() { return maxGCTime; }
--- a/analyzer/fx/src/main/java/jp/co/ntt/oss/heapstats/plugin/builtin/snapshot/tabs/SummaryController.java Mon Dec 05 12:25:50 2016 +0900 +++ b/analyzer/fx/src/main/java/jp/co/ntt/oss/heapstats/plugin/builtin/snapshot/tabs/SummaryController.java Mon Dec 05 12:26:40 2016 +0900 @@ -135,6 +135,7 @@ new SummaryData.SummaryDataEntry(resource.getString("summary.heap.usage"), String.format("%.1f MB", data.getLatestHeapUsage() / 1024.0d / 1024.0d)), new SummaryData.SummaryDataEntry(resource.getString("summary.metaspace.usage"), String.format("%.1f MB", data.getLatestMetaspaceUsage() / 1024.0d / 1024.0d)), new SummaryData.SummaryDataEntry(resource.getString("summary.gc.time"), String.format("%d ms", data.getMaxGCTime())), + new SummaryData.SummaryDataEntry(resource.getString("summary.gc.totaltime"), String.format("%d ms", data.getTotalGCTime())), new SummaryData.SummaryDataEntry(resource.getString("summary.snapshot.size"), String.format("%.1f KB", data.getMaxSnapshotSize() / 1024.0d)), new SummaryData.SummaryDataEntry(resource.getString("summary.snapshot.entrycount"), Long.toString(data.getMaxEntryCount())) ));
--- a/analyzer/fx/src/main/resources/snapshotResources_en.properties Mon Dec 05 12:25:50 2016 +0900 +++ b/analyzer/fx/src/main/resources/snapshotResources_en.properties Mon Dec 05 12:26:40 2016 +0900 @@ -40,7 +40,8 @@ summary.snapshot.size = Max SnapShot size summary.snapshot.entrycount = Max entry count summary.gc.count = GC Count -summary.gc.time = Max GCTime +summary.gc.time = Max major GC time +summary.gc.totaltime = Total major GC time summary.heap.usage = Latest Java heap usage summary.metaspace.usage = Latest Metaspace usage
--- a/analyzer/fx/src/main/resources/snapshotResources_ja.properties Mon Dec 05 12:25:50 2016 +0900 +++ b/analyzer/fx/src/main/resources/snapshotResources_ja.properties Mon Dec 05 12:26:40 2016 +0900 @@ -40,7 +40,8 @@ summary.snapshot.size = \u6700\u5927\u30b9\u30ca\u30c3\u30d7\u30b7\u30e7\u30c3\u30c8\u30b5\u30a4\u30ba summary.snapshot.entrycount = \u6700\u5927\u30a8\u30f3\u30c8\u30ea\u6570 summary.gc.count = GC\u56de\u6570 -summary.gc.time = \u6700\u5927GC\u6642\u9593 +summary.gc.time = \u6700\u5927\u30e1\u30b8\u30e3\u30fcGC\u6642\u9593 +summary.gc.totaltime = \u7dcf\u30e1\u30b8\u30e3\u30fcGC\u6642\u9593 summary.heap.usage = \u6700\u7d42Java\u30d2\u30fc\u30d7\u4f7f\u7528\u91cf summary.metaspace.usage =\u6700\u7d42\u30e1\u30bf\u30b9\u30da\u30fc\u30b9\u4f7f\u7528\u91cf