You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@flink.apache.org by gr...@apache.org on 2016/12/02 15:46:01 UTC
[3/3] flink git commit: [FLINK-5209] [webfrontend] Fix TaskManager
metrics
[FLINK-5209] [webfrontend] Fix TaskManager metrics
Fixes a capitalization incompatibility when providing memory metrics to
the webfrontend. Numeric metrics now returned as numbers in the JSON
API. Non-byte numbers now localized in the webfrontend.
This closes #2902
Project: http://git-wip-us.apache.org/repos/asf/flink/repo
Commit: http://git-wip-us.apache.org/repos/asf/flink/commit/4e336c69
Tree: http://git-wip-us.apache.org/repos/asf/flink/tree/4e336c69
Diff: http://git-wip-us.apache.org/repos/asf/flink/diff/4e336c69
Branch: refs/heads/master
Commit: 4e336c692b74f218ba09844a46f49534e3a210e9
Parents: 45b770b
Author: Greg Hogan <co...@greghogan.com>
Authored: Tue Nov 29 16:25:21 2016 -0500
Committer: Greg Hogan <co...@greghogan.com>
Committed: Fri Dec 2 10:42:10 2016 -0500
----------------------------------------------------------------------
.../handlers/TaskManagersHandler.java | 31 +++++++++-----
.../taskmanager/taskmanager.metrics.jade | 43 ++++++++++----------
.../app/scripts/common/filters.coffee | 3 ++
flink-runtime-web/web-dashboard/web/js/index.js | 6 ++-
.../taskmanager/taskmanager.metrics.html | 42 +++++++++----------
.../flink/runtime/metrics/util/MetricUtils.java | 10 +++--
6 files changed, 78 insertions(+), 57 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/flink/blob/4e336c69/flink-runtime-web/src/main/java/org/apache/flink/runtime/webmonitor/handlers/TaskManagersHandler.java
----------------------------------------------------------------------
diff --git a/flink-runtime-web/src/main/java/org/apache/flink/runtime/webmonitor/handlers/TaskManagersHandler.java b/flink-runtime-web/src/main/java/org/apache/flink/runtime/webmonitor/handlers/TaskManagersHandler.java
index 66c5373..c757f5c 100644
--- a/flink-runtime-web/src/main/java/org/apache/flink/runtime/webmonitor/handlers/TaskManagersHandler.java
+++ b/flink-runtime-web/src/main/java/org/apache/flink/runtime/webmonitor/handlers/TaskManagersHandler.java
@@ -124,16 +124,27 @@ public class TaskManagersHandler extends AbstractJsonRequestHandler {
gen.writeNumberField("totalUsed", heapUsed + nonHeapUsed);
gen.writeNumberField("totalMax", heapTotal + nonHeapTotal);
- gen.writeStringField("directCount", metrics.getMetric("Status.JVM.Memory.Direct.Count", "0"));
- gen.writeStringField("directUsed", metrics.getMetric("Status.JVM.Memory.Direct.MemoryUsed", "0"));
- gen.writeStringField("directMax", metrics.getMetric("Status.JVM.Memory.Direct.TotalCapacity", "0"));
+ long directCount = Long.valueOf(metrics.getMetric("Status.JVM.Memory.Direct.Count", "0"));
+ long directUsed = Long.valueOf(metrics.getMetric("Status.JVM.Memory.Direct.MemoryUsed", "0"));
+ long directMax = Long.valueOf(metrics.getMetric("Status.JVM.Memory.Direct.TotalCapacity", "0"));
- gen.writeStringField("mappedCount", metrics.getMetric("Status.JVM.Memory.Mapped.Count", "0"));
- gen.writeStringField("mappedUsed", metrics.getMetric("Status.JVM.Memory.Mapped.MemoryUsed", "0"));
- gen.writeStringField("mappedMax", metrics.getMetric("Status.JVM.Memory.Mapped.TotalCapacity", "0"));
+ gen.writeNumberField("directCount", directCount);
+ gen.writeNumberField("directUsed", directUsed);
+ gen.writeNumberField("directMax", directMax);
- gen.writeStringField("memorySegmentsAvailable", metrics.getMetric("Status.Network.AvailableMemorySegments", "0"));
- gen.writeStringField("memorySegmentsTotal", metrics.getMetric("Status.Network.TotalMemorySegments", "0"));
+ long mappedCount = Long.valueOf(metrics.getMetric("Status.JVM.Memory.Mapped.Count", "0"));
+ long mappedUsed = Long.valueOf(metrics.getMetric("Status.JVM.Memory.Mapped.MemoryUsed", "0"));
+ long mappedMax = Long.valueOf(metrics.getMetric("Status.JVM.Memory.Mapped.TotalCapacity", "0"));
+
+ gen.writeNumberField("mappedCount", mappedCount);
+ gen.writeNumberField("mappedUsed", mappedUsed);
+ gen.writeNumberField("mappedMax", mappedMax);
+
+ long memorySegmentsAvailable = Long.valueOf(metrics.getMetric("Status.Network.AvailableMemorySegments", "0"));
+ long memorySegmentsTotal = Long.valueOf(metrics.getMetric("Status.Network.TotalMemorySegments", "0"));
+
+ gen.writeNumberField("memorySegmentsAvailable", memorySegmentsAvailable);
+ gen.writeNumberField("memorySegmentsTotal", memorySegmentsTotal);
gen.writeArrayFieldStart("garbageCollectors");
@@ -143,8 +154,8 @@ public class TaskManagersHandler extends AbstractJsonRequestHandler {
if (count != null && time != null) {
gen.writeStartObject();
gen.writeStringField("name", gcName);
- gen.writeStringField("count", count);
- gen.writeStringField("time", time);
+ gen.writeNumberField("count", Long.valueOf(count));
+ gen.writeNumberField("time", Long.valueOf(time));
gen.writeEndObject();
}
}
http://git-wip-us.apache.org/repos/asf/flink/blob/4e336c69/flink-runtime-web/web-dashboard/app/partials/taskmanager/taskmanager.metrics.jade
----------------------------------------------------------------------
diff --git a/flink-runtime-web/web-dashboard/app/partials/taskmanager/taskmanager.metrics.jade b/flink-runtime-web/web-dashboard/app/partials/taskmanager/taskmanager.metrics.jade
index 7920178..b7e8fec 100644
--- a/flink-runtime-web/web-dashboard/app/partials/taskmanager/taskmanager.metrics.jade
+++ b/flink-runtime-web/web-dashboard/app/partials/taskmanager/taskmanager.metrics.jade
@@ -50,19 +50,19 @@ div(ng-if="metrics.id")
tbody
tr
td Heap
- td {{ metrics.metrics.heapCommitted | humanizeBytes }}
- td {{ metrics.metrics.heapUsed | humanizeBytes }}
- td {{ metrics.metrics.heapMax | humanizeBytes }}
+ td {{ metrics.metrics.heapCommitted | humanizeBytes }}
+ td {{ metrics.metrics.heapUsed | humanizeBytes }}
+ td {{ metrics.metrics.heapMax | humanizeBytes }}
tr
td Non-Heap
- td {{ metrics.metrics.nonHeapCommitted | humanizeBytes }}
- td {{ metrics.metrics.nonHeapUsed | humanizeBytes }}
- td {{ metrics.metrics.nonHeapMax | humanizeBytes }}
+ td {{ metrics.metrics.nonHeapCommitted | humanizeBytes }}
+ td {{ metrics.metrics.nonHeapUsed | humanizeBytes }}
+ td {{ metrics.metrics.nonHeapMax | humanizeBytes }}
tr
td Total
- td {{ metrics.metrics.totalCommitted | humanizeBytes }}
- td {{ metrics.metrics.totalUsed | humanizeBytes }}
- td {{ metrics.metrics.totalMax | humanizeBytes }}
+ td {{ metrics.metrics.totalCommitted | humanizeBytes }}
+ td {{ metrics.metrics.totalUsed | humanizeBytes }}
+ td {{ metrics.metrics.totalMax | humanizeBytes }}
h2 Outside JVM
table.table.table-properties
@@ -75,18 +75,18 @@ div(ng-if="metrics.id")
tbody
tr
td Direct
- td {{ metrics.metrics.directCount }}
- td {{ metrics.metrics.directUsed }}
- td {{ metrics.metrics.directTotal }}
+ td {{ metrics.metrics.directCount | toLocaleString }}
+ td {{ metrics.metrics.directUsed | humanizeBytes }}
+ td {{ metrics.metrics.directMax | humanizeBytes }}
tr
td Mapped
- td {{ metrics.metrics.mappedCount }}
- td {{ metrics.metrics.mappedUsed }}
- td {{ metrics.metrics.mappedMax }}
+ td {{ metrics.metrics.mappedCount | toLocaleString }}
+ td {{ metrics.metrics.mappedUsed | humanizeBytes }}
+ td {{ metrics.metrics.mappedMax | humanizeBytes }}
h1 Network
- h2 MemorySegments
+ h2 Memory Segments
table.table.table-properties
thead
tr
@@ -95,11 +95,10 @@ div(ng-if="metrics.id")
tbody
tr
td Available
- td {{ metrics.metrics.memorySegmentsAvailable }}
+ td {{ metrics.metrics.memorySegmentsAvailable | toLocaleString }}
tr
td Total
- td {{ metrics.metrics.memorySegmentsTotal }}
-
+ td {{ metrics.metrics.memorySegmentsTotal | toLocaleString }}
h1 Garbage Collection
table.table.table-properties
@@ -109,7 +108,7 @@ div(ng-if="metrics.id")
th Count
th Time
tbody(ng-repeat="g in metrics.metrics.garbageCollectors")
- tr
+ tr
td {{ g.name }}
- td {{ g.count }}
- td {{ g.time }}
\ No newline at end of file
+ td {{ g.count | toLocaleString }}
+ td {{ g.time | toLocaleString }}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/flink/blob/4e336c69/flink-runtime-web/web-dashboard/app/scripts/common/filters.coffee
----------------------------------------------------------------------
diff --git a/flink-runtime-web/web-dashboard/app/scripts/common/filters.coffee b/flink-runtime-web/web-dashboard/app/scripts/common/filters.coffee
index 093c599..c3030a9 100644
--- a/flink-runtime-web/web-dashboard/app/scripts/common/filters.coffee
+++ b/flink-runtime-web/web-dashboard/app/scripts/common/filters.coffee
@@ -73,5 +73,8 @@ angular.module('flinkApp')
return "" if typeof bytes is "undefined" or bytes is null
if bytes < 1000 then bytes + " B" else converter(bytes, 1)
+.filter "toLocaleString", ->
+ (text) -> text.toLocaleString()
+
.filter "toUpperCase", ->
(text) -> text.toUpperCase()