You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@gearpump.apache.org by hu...@apache.org on 2016/04/26 11:42:39 UTC
[29/49] incubator-gearpump git commit: GEARPUMP-11, fix code style
http://git-wip-us.apache.org/repos/asf/incubator-gearpump/blob/c176e448/services/dashboard/views/apps/app/executors_table.js
----------------------------------------------------------------------
diff --git a/services/dashboard/views/apps/app/executors_table.js b/services/dashboard/views/apps/app/executors_table.js
index c835228..ee2f258 100644
--- a/services/dashboard/views/apps/app/executors_table.js
+++ b/services/dashboard/views/apps/app/executors_table.js
@@ -5,7 +5,7 @@
angular.module('dashboard')
- .directive('executorTable', function() {
+ .directive('executorTable', function () {
'use strict';
return {
@@ -16,7 +16,7 @@ angular.module('dashboard')
executors: '=executorsBind'
},
controller: ['$scope', '$sortableTableBuilder', 'i18n',
- function($scope, $stb, i18n) {
+ function ($scope, $stb, i18n) {
$scope.whatIsExecutor = i18n.terminology.appExecutor;
$scope.table = {
cols: [
@@ -30,22 +30,24 @@ angular.module('dashboard')
function updateTable(executors) {
$scope.table.rows = $stb.$update($scope.table.rows,
- _.map(executors, function(executor) {
+ _.map(executors, function (executor) {
return {
status: {
tooltip: executor.status,
condition: executor.isRunning ? 'good' : '',
shape: 'stripe'
},
- id: {href: executor.pageUrl, text: executor.executorId === -1 ?
- 'AppMaster' : 'Executor ' + executor.executorId},
+ id: {
+ href: executor.pageUrl, text: executor.executorId === -1 ?
+ 'AppMaster' : 'Executor ' + executor.executorId
+ },
worker: {href: executor.workerPageUrl, text: 'Worker ' + executor.workerId},
tasks: executor.taskCount || 0
};
}));
}
- $scope.$watch('executors', function(executors) {
+ $scope.$watch('executors', function (executors) {
updateTable(executors);
});
}]
http://git-wip-us.apache.org/repos/asf/incubator-gearpump/blob/c176e448/services/dashboard/views/apps/app/overview.js
----------------------------------------------------------------------
diff --git a/services/dashboard/views/apps/app/overview.js b/services/dashboard/views/apps/app/overview.js
index 2d16d62..b6c505d 100644
--- a/services/dashboard/views/apps/app/overview.js
+++ b/services/dashboard/views/apps/app/overview.js
@@ -6,7 +6,7 @@
angular.module('dashboard')
.config(['$stateProvider',
- function($stateProvider) {
+ function ($stateProvider) {
'use strict';
$stateProvider
@@ -18,7 +18,7 @@ angular.module('dashboard')
}])
.controller('AppOverviewCtrl', ['$scope', 'helper', '$propertyTableBuilder', 'models',
- function($scope, helper, $ptb, models) {
+ function ($scope, helper, $ptb, models) {
'use strict';
$scope.appSummary = [
@@ -29,7 +29,7 @@ angular.module('dashboard')
$ptb.button('Quick Links').done()
];
- $scope.$watch('app', function(app) {
+ $scope.$watch('app', function (app) {
$ptb.$update($scope.appSummary, [
app.appId,
app.actorPath,
@@ -45,9 +45,9 @@ angular.module('dashboard')
$scope.alerts = [];
models.$get.appAlerts($scope.app.appId)
- .then(function(alerts0) {
+ .then(function (alerts0) {
$scope.alerts = alerts0.$data();
- alerts0.$subscribe($scope, function(alerts) {
+ alerts0.$subscribe($scope, function (alerts) {
$scope.alerts = alerts;
});
});
http://git-wip-us.apache.org/repos/asf/incubator-gearpump/blob/c176e448/services/dashboard/views/apps/apps.html
----------------------------------------------------------------------
diff --git a/services/dashboard/views/apps/apps.html b/services/dashboard/views/apps/apps.html
index c4999a3..cfb46e4 100644
--- a/services/dashboard/views/apps/apps.html
+++ b/services/dashboard/views/apps/apps.html
@@ -14,7 +14,7 @@
</div>
</div>
<div class="col-md-3 col-sm-6 text-right">
- <!--FILTER-->
+ <!--FILTER-->
</div>
<div class="col-md-3 hidden-sm hidden-xs">
<searchbox
@@ -34,6 +34,7 @@
<div class="table-no-data">
<h2 class="glyphicon glyphicon-bullhorn"></h2>
<h4>No application is running</h4>
+
<p>Please submit an user application first.</p>
</div>
</sortable-table>
http://git-wip-us.apache.org/repos/asf/incubator-gearpump/blob/c176e448/services/dashboard/views/apps/apps.js
----------------------------------------------------------------------
diff --git a/services/dashboard/views/apps/apps.js b/services/dashboard/views/apps/apps.js
index 6707e36..ad26fd4 100644
--- a/services/dashboard/views/apps/apps.js
+++ b/services/dashboard/views/apps/apps.js
@@ -6,7 +6,7 @@
angular.module('dashboard')
.config(['$stateProvider',
- function($stateProvider) {
+ function ($stateProvider) {
'use strict';
$stateProvider
@@ -15,7 +15,7 @@ angular.module('dashboard')
templateUrl: 'views/apps/apps.html',
controller: 'AppsCtrl',
resolve: {
- apps0: ['models', function(models) {
+ apps0: ['models', function (models) {
return models.$get.apps();
}]
}
@@ -23,7 +23,7 @@ angular.module('dashboard')
}])
.controller('AppsCtrl', ['$scope', '$modal', '$state', '$sortableTableBuilder', '$dialogs', 'apps0',
- function($scope, $modal, $state, $stb, $dialogs, apps0) {
+ function ($scope, $modal, $state, $stb, $dialogs, apps0) {
'use strict';
var submitWindow = $modal({
@@ -34,12 +34,12 @@ angular.module('dashboard')
show: false
});
- $scope.openSubmitGearAppDialog = function() {
+ $scope.openSubmitGearAppDialog = function () {
submitWindow.$scope.isStormApp = false;
submitWindow.$promise.then(submitWindow.show);
};
- $scope.openSubmitStormAppDialog = function() {
+ $scope.openSubmitStormAppDialog = function () {
submitWindow.$scope.isStormApp = true;
submitWindow.$promise.then(submitWindow.show);
};
@@ -75,7 +75,7 @@ angular.module('dashboard')
function updateTable(apps) {
$scope.appsTable.rows = $stb.$update($scope.appsTable.rows,
- _.map(apps, function(app) {
+ _.map(apps, function (app) {
var pageUrl = app.isRunning ? app.pageUrl : '';
return {
id: {href: pageUrl, text: app.appId},
@@ -86,20 +86,25 @@ angular.module('dashboard')
submissionTime: app.submissionTime,
startTime: app.startTime,
stopTime: app.finishTime || '-',
- view: {href: app.pageUrl, text: 'Details', class: 'btn-xs btn-primary', disabled: !app.isRunning},
+ view: {
+ href: app.pageUrl,
+ text: 'Details',
+ class: 'btn-xs btn-primary',
+ disabled: !app.isRunning
+ },
config: {href: app.configLink, target: '_blank', text: 'Config', class: 'btn-xs'},
kill: {
text: 'Kill', class: 'btn-xs', disabled: !app.isRunning,
- click: function() {
- $dialogs.confirm('Are you sure to kill this application?', function() {
+ click: function () {
+ $dialogs.confirm('Are you sure to kill this application?', function () {
app.terminate();
});
}
},
restart: {
text: 'Restart', class: 'btn-xs', disabled: !app.isRunning,
- click: function() {
- $dialogs.confirm('Are you sure to restart this application?', function() {
+ click: function () {
+ $dialogs.confirm('Are you sure to restart this application?', function () {
app.restart();
});
}
@@ -109,7 +114,7 @@ angular.module('dashboard')
}
updateTable(apps0.$data());
- apps0.$subscribe($scope, function(apps) {
+ apps0.$subscribe($scope, function (apps) {
updateTable(apps);
});
}])
http://git-wip-us.apache.org/repos/asf/incubator-gearpump/blob/c176e448/services/dashboard/views/apps/compose/compose.js
----------------------------------------------------------------------
diff --git a/services/dashboard/views/apps/compose/compose.js b/services/dashboard/views/apps/compose/compose.js
index 33e9263..8c70f32 100644
--- a/services/dashboard/views/apps/compose/compose.js
+++ b/services/dashboard/views/apps/compose/compose.js
@@ -6,7 +6,7 @@
angular.module('dashboard')
.config(['$stateProvider',
- function($stateProvider) {
+ function ($stateProvider) {
'use strict';
$stateProvider
@@ -15,7 +15,7 @@ angular.module('dashboard')
templateUrl: 'views/apps/compose/compose.html',
controller: 'ComposeAppCtrl',
resolve: {
- partitioners: ['models', function(models) {
+ partitioners: ['models', function (models) {
return models.$get.partitioners();
}]
}
@@ -25,7 +25,7 @@ angular.module('dashboard')
// todo: remove the leading $ and rename $visNetworkStyle to vis, internal module does not have a $.
.controller('ComposeAppCtrl', ['$scope', '$state', '$modal', '$contextmenu',
'models', 'partitioners', '$visNetworkStyle', 'composeAppDialogs',
- function($scope, $state, $modal, $contextmenu, models, partitioners, $vis, dialogs) {
+ function ($scope, $state, $modal, $contextmenu, models, partitioners, $vis, dialogs) {
'use strict';
var chooseProcessorDialog = dialogs.create({
@@ -40,11 +40,11 @@ angular.module('dashboard')
controller: 'ComposeAppChooseEdgeCtrl'
});
- $scope.chooseProcessor = function(processor) {
+ $scope.chooseProcessor = function (processor) {
var args = {
processor: processor
};
- chooseProcessorDialog.show(args, function(processor) {
+ chooseProcessorDialog.show(args, function (processor) {
if (!processor.hasOwnProperty('id')) {
processor.id = newProcessorId();
}
@@ -53,24 +53,25 @@ angular.module('dashboard')
});
};
- $scope.chooseEdge = function(edge) {
+ $scope.chooseEdge = function (edge) {
var args = {
edge: edge,
partitioners: partitioners,
processors: {}
};
- angular.forEach($scope.visGraph.data.nodes, function(processor) {
+ angular.forEach($scope.visGraph.data.nodes, function (processor) {
args.processors[processor.id] = {
text: 'Processor ' + processor.id,
subtext: processor.taskClass
};
});
- chooseEdgeDialog.show(args, function(edge) {
+ chooseEdgeDialog.show(args, function (edge) {
$scope.visGraph.data.edges.update(edge);
});
};
var processorId = 0;
+
function newProcessorId() {
return processorId++;
}
@@ -79,7 +80,7 @@ angular.module('dashboard')
options: $vis.newOptions(/*height=*/'400px'),
data: $vis.newData(),
events: {
- onDoubleClick: function(data) {
+ onDoubleClick: function (data) {
if (data.nodes.length === 1) {
var processor = $scope.visGraph.data.nodes.get(data.nodes[0]);
$scope.chooseProcessor(processor);
@@ -90,19 +91,19 @@ angular.module('dashboard')
$scope.chooseProcessor();
}
},
- onContext: function(data) {
+ onContext: function (data) {
if (data.hasOwnProperty('node')) {
- $scope.selectItemModify = function() {
+ $scope.selectItemModify = function () {
$scope.chooseProcessor($scope.visGraph.data.nodes.get(data.node));
};
- $scope.selectItemDelete = function() {
+ $scope.selectItemDelete = function () {
deleteProcessor(data.node);
};
} else if (data.hasOwnProperty('edge')) {
- $scope.selectItemModify = function() {
+ $scope.selectItemModify = function () {
$scope.chooseEdge($scope.visGraph.data.edges.get(data.edge));
};
- $scope.selectItemDelete = function() {
+ $scope.selectItemDelete = function () {
deleteEdge(data.edge);
};
} else {
@@ -111,7 +112,7 @@ angular.module('dashboard')
var elem = document.getElementById('contextmenu');
$contextmenu.popup(elem, data.pointer.DOM);
},
- onDeletePressed: function(selection) {
+ onDeletePressed: function (selection) {
if (selection.nodes.length === 1) {
deleteProcessor(selection.nodes[0]);
} else if (selection.edges.length === 1) {
@@ -124,7 +125,7 @@ angular.module('dashboard')
function deleteProcessor(processorId) {
$scope.visGraph.data.nodes.remove(processorId);
var edgeIds = _.chain($scope.visGraph.data.edges.get())
- .filter(function(edge) {
+ .filter(function (edge) {
return processorId == edge.from || processorId == edge.to;
})
.map('id')
@@ -139,32 +140,32 @@ angular.module('dashboard')
$scope.files = {};
$scope.submitted = false;
- $scope.$watch('uploads', function(uploads) {
+ $scope.$watch('uploads', function (uploads) {
$scope.files = {}; // todo: only one file can be uploaded once (issue 1450)
- angular.forEach(uploads, function(file) {
+ angular.forEach(uploads, function (file) {
if (_.endsWith(file.name, '.jar')) {
$scope.files[file.name] = file;
}
});
});
- $scope.removeFile = function(name) {
+ $scope.removeFile = function (name) {
delete $scope.files[name];
};
- $scope.canSubmit = function() {
+ $scope.canSubmit = function () {
return !$scope.submitted &&
$scope.visGraph.data.nodes.length > 0 &&
Object.keys($scope.files).length > 0;
};
- $scope.submit = function() {
+ $scope.submit = function () {
var data = $scope.visGraph.data;
var processors = data.nodes.get();
var edges = data.edges.get();
var args = {
appName: 'userapp',
- processors: processors.map(function(processor) {
+ processors: processors.map(function (processor) {
return [processor.id, {
id: processor.id,
taskClass: processor.taskClass,
@@ -174,7 +175,7 @@ angular.module('dashboard')
}),
dag: {
vertexList: _.map(processors, 'id'),
- edgeList: edges.map(function(edge) {
+ edgeList: edges.map(function (edge) {
return [edge.from, edge.partitionerClass, edge.to]
})
},
@@ -182,7 +183,7 @@ angular.module('dashboard')
};
$scope.submitting = true;
- models.submitDag($scope.files, args, function(response) {
+ models.submitDag($scope.files, args, function (response) {
$scope.submitting = false;
$scope.submitted = response.success;
$scope.shouldNoticeSubmitFailed = !response.success;
@@ -191,7 +192,7 @@ angular.module('dashboard')
} else {
$scope.error = response.error;
$scope.hasStackTrace = response.stackTrace.length > 0;
- $scope.showErrorInNewWin = function() {
+ $scope.showErrorInNewWin = function () {
if ($scope.hasStackTrace) {
var popup = window.open('', 'Error Log');
var html = [$scope.error].concat(response.stackTrace).join('\n');
@@ -204,7 +205,7 @@ angular.module('dashboard')
});
};
- $scope.view = function() {
+ $scope.view = function () {
$state.go('streamingapp.overview', {appId: $scope.appId});
};
@@ -212,11 +213,11 @@ angular.module('dashboard')
$scope.keys = Object.keys;
}])
- .factory('composeAppDialogs', ['$modal', function($modal) {
+ .factory('composeAppDialogs', ['$modal', function ($modal) {
'use strict';
return {
- create: function(options) {
+ create: function (options) {
var dialog = $modal({
scope: options.scope,
templateUrl: options.templateUrl,
@@ -227,9 +228,9 @@ angular.module('dashboard')
});
var showDialogFn = dialog.show;
- dialog.show = function(args, onChange) {
+ dialog.show = function (args, onChange) {
dialog.$options.scope.onChange = onChange;
- angular.forEach(args, function(value, key) {
+ angular.forEach(args, function (value, key) {
dialog.$options.scope[key] = value;
});
showDialogFn();
http://git-wip-us.apache.org/repos/asf/incubator-gearpump/blob/c176e448/services/dashboard/views/apps/compose/popups/choose_edge.js
----------------------------------------------------------------------
diff --git a/services/dashboard/views/apps/compose/popups/choose_edge.js b/services/dashboard/views/apps/compose/popups/choose_edge.js
index 000b53e..209251d 100644
--- a/services/dashboard/views/apps/compose/popups/choose_edge.js
+++ b/services/dashboard/views/apps/compose/popups/choose_edge.js
@@ -6,25 +6,25 @@
angular.module('dashboard')
.controller('ComposeAppChooseEdgeCtrl', ['$scope',
- function($scope) {
+ function ($scope) {
'use strict';
$scope.invalid = {};
$scope.edge = angular.merge({}, $scope.edge);
- $scope.partitioners = $scope.partitioners.map(function(partitioner) {
+ $scope.partitioners = $scope.partitioners.map(function (partitioner) {
return {
text: partitioner,
icon: 'glyphicon glyphicon-random'
};
});
- $scope.canSave = function() {
+ $scope.canSave = function () {
return _.sum($scope.invalid) === 0 &&
// todo: check ring graph condition
($scope.edge.from.value !== $scope.edge.to.value);
};
- $scope.save = function() {
+ $scope.save = function () {
$scope.$hide();
if ($scope.onChange) {
$scope.edge.from = $scope.edge.from.value;
http://git-wip-us.apache.org/repos/asf/incubator-gearpump/blob/c176e448/services/dashboard/views/apps/compose/popups/choose_processor.js
----------------------------------------------------------------------
diff --git a/services/dashboard/views/apps/compose/popups/choose_processor.js b/services/dashboard/views/apps/compose/popups/choose_processor.js
index f261e2b..d3cc972 100644
--- a/services/dashboard/views/apps/compose/popups/choose_processor.js
+++ b/services/dashboard/views/apps/compose/popups/choose_processor.js
@@ -6,7 +6,7 @@
angular.module('dashboard')
.controller('ComposeAppChooseProcessorCtrl', ['$scope',
- function($scope) {
+ function ($scope) {
'use strict';
$scope.invalid = {};
@@ -14,11 +14,11 @@ angular.module('dashboard')
parallelism: 1
}, $scope.processor);
- $scope.canSave = function() {
+ $scope.canSave = function () {
return _.sum($scope.invalid) === 0;
};
- $scope.save = function() {
+ $scope.save = function () {
$scope.$hide();
if ($scope.onChange) {
$scope.onChange($scope.processor);
http://git-wip-us.apache.org/repos/asf/incubator-gearpump/blob/c176e448/services/dashboard/views/apps/streamingapp/dag.html
----------------------------------------------------------------------
diff --git a/services/dashboard/views/apps/streamingapp/dag.html b/services/dashboard/views/apps/streamingapp/dag.html
index 93655cb..6f84b56 100644
--- a/services/dashboard/views/apps/streamingapp/dag.html
+++ b/services/dashboard/views/apps/streamingapp/dag.html
@@ -2,7 +2,9 @@
<div class="panel panel-sm panel-default">
<div class="panel-heading">DAG
<remark class="pull-right" type="info"
- tooltip="<b>Right click (or long press on touch device)</b> on a processor will show all available operations. <b>Double click</b> a processor will show its details.">Instructions</remark>
+ tooltip="<b>Right click (or long press on touch device)</b> on a processor will show all available operations. <b>Double click</b> a processor will show its details.">
+ Instructions
+ </remark>
</div>
<div class="panel-body">
<div class="cm-container" id="dag-node-menu"
http://git-wip-us.apache.org/repos/asf/incubator-gearpump/blob/c176e448/services/dashboard/views/apps/streamingapp/dag.js
----------------------------------------------------------------------
diff --git a/services/dashboard/views/apps/streamingapp/dag.js b/services/dashboard/views/apps/streamingapp/dag.js
index 310f555..c9e8da3 100644
--- a/services/dashboard/views/apps/streamingapp/dag.js
+++ b/services/dashboard/views/apps/streamingapp/dag.js
@@ -6,7 +6,7 @@
angular.module('dashboard')
.config(['$stateProvider',
- function($stateProvider) {
+ function ($stateProvider) {
'use strict';
$stateProvider
@@ -18,7 +18,7 @@ angular.module('dashboard')
}])
.controller('StreamingAppDagCtrl', ['$scope', '$state', '$modal', '$contextmenu', '$visNetworkStyle',
- function($scope, $state, $modal, $contextmenu, $vis) {
+ function ($scope, $state, $modal, $contextmenu, $vis) {
'use strict';
$scope.activeProcessorId = -1;
@@ -41,12 +41,12 @@ angular.module('dashboard')
controller: 'StreamingAppDagEditCtrl'
});
- $scope.view = function() {
+ $scope.view = function () {
var options = {processorId: $scope.activeProcessorId};
$state.go('streamingapp.processor', options);
};
- $scope.modify = function(options) {
+ $scope.modify = function (options) {
$scope.modifyOptions = options;
editorDialog.$promise.then(editorDialog.show);
};
@@ -55,33 +55,33 @@ angular.module('dashboard')
options: $vis.newHierarchicalLayoutOptions({depth: $scope.dag.hierarchyDepth()}),
data: $vis.newData(),
events: {
- onDoubleClick: function(data) {
+ onDoubleClick: function (data) {
if (data.nodes.length === 1) {
var processorId = Number(data.nodes[0]);
$state.go('streamingapp.processor', {processorId: processorId});
}
},
- onContext: function(data) {
+ onContext: function (data) {
if (data.hasOwnProperty('node')) {
$scope.activeProcessorId = Number(data.node);
$scope.$apply();
showProcessorOperationsContextMenu(data.pointer.DOM);
}
},
- onSelectNode: function(data) {
+ onSelectNode: function (data) {
if (data.nodes.length === 1) {
$scope.activeProcessorId = Number(data.nodes[0]);
$scope.$apply();
}
},
- onDeselectNode: function() {
+ onDeselectNode: function () {
$scope.activeProcessorId = -1;
$scope.$apply();
},
- onHoverNode: function() {
+ onHoverNode: function () {
$('html,body').css('cursor', 'pointer');
},
- onBlurNode: function() {
+ onBlurNode: function () {
$('html,body').css('cursor', 'default');
}
}
@@ -94,8 +94,8 @@ angular.module('dashboard')
/** Scope independent draw methods */
var draw = {
- removeDeadElements: function(visDataSet, aliveElementIds) {
- var ids = visDataSet.getIds().filter(function(id) {
+ removeDeadElements: function (visDataSet, aliveElementIds) {
+ var ids = visDataSet.getIds().filter(function (id) {
return !aliveElementIds.hasOwnProperty(id);
});
if (ids.length) {
@@ -104,12 +104,12 @@ angular.module('dashboard')
}
},
- updateVisGraphNodes: function(visNodes, data) {
+ updateVisGraphNodes: function (visNodes, data) {
data.processorWeights[-1] = 0; // weight range from 0 to max weight
var suggestRadiusFn = draw._rangeMapper(data.processorWeights, $vis.nodeRadiusRange());
var diff = [];
- _.forEach(data.processors, function(processor) {
+ _.forEach(data.processors, function (processor) {
var label = $vis.processorNameAsLabel(processor);
var weight = data.processorWeights[processor.id];
var visNode = visNodes.get(processor.id);
@@ -131,14 +131,14 @@ angular.module('dashboard')
}
},
- updateVisGraphEdges: function(visEdges, data) {
+ updateVisGraphEdges: function (visEdges, data) {
data.edgeBandwidths[-1] = 0; // minimal bandwidth
var suggestEdgeWidthFn = draw._rangeMapper(data.edgeBandwidths, $vis.edgeWidthRange());
var suggestEdgeArrowSizeFn = draw._rangeMapper(data.edgeBandwidths, $vis.edgeArrowSizeRange());
var suggestEdgeOpacityFn = draw._rangeMapper(data.edgeBandwidths, $vis.edgeOpacityRange());
var diff = [];
- _.forEach(data.edges, function(edge, edgeId) {
+ _.forEach(data.edges, function (edge, edgeId) {
var bandwidth = data.edgeBandwidths[edgeId];
var visEdge = visEdges.get(edgeId);
var width = d3.round(suggestEdgeWidthFn(bandwidth), 1);
@@ -163,7 +163,7 @@ angular.module('dashboard')
}
},
- _rangeMapper: function(dict, range) {
+ _rangeMapper: function (dict, range) {
var values = d3.values(dict);
return d3.scale.linear().domain(d3.extent(values)).range(range);
}
@@ -195,7 +195,7 @@ angular.module('dashboard')
$scope.criticalPathLatency = metricsProvider.getCriticalPathLatency();
}
- $scope.$watchCollection('dag.metricsUpdateTime', function() {
+ $scope.$watchCollection('dag.metricsUpdateTime', function () {
redrawGraph($scope.dag.getWeightedDagView());
updateMetricsValues($scope.dag);
});
http://git-wip-us.apache.org/repos/asf/incubator-gearpump/blob/c176e448/services/dashboard/views/apps/streamingapp/executor.js
----------------------------------------------------------------------
diff --git a/services/dashboard/views/apps/streamingapp/executor.js b/services/dashboard/views/apps/streamingapp/executor.js
index 31cbd5f..8a83808 100644
--- a/services/dashboard/views/apps/streamingapp/executor.js
+++ b/services/dashboard/views/apps/streamingapp/executor.js
@@ -6,7 +6,7 @@
angular.module('dashboard')
.config(['$stateProvider',
- function($stateProvider) {
+ function ($stateProvider) {
'use strict';
$stateProvider
@@ -15,7 +15,7 @@ angular.module('dashboard')
templateUrl: 'views/apps/streamingapp/executor.html',
controller: 'StreamingAppExecutorCtrl',
resolve: {
- executor0: ['$stateParams', 'models', function($stateParams, models) {
+ executor0: ['$stateParams', 'models', function ($stateParams, models) {
return models.$get.appExecutor($stateParams.appId, $stateParams.executorId);
}]
}
@@ -24,7 +24,7 @@ angular.module('dashboard')
.controller('StreamingAppExecutorCtrl', ['$scope', '$propertyTableBuilder',
'helper', 'restapi', 'models', 'executor0',
- function($scope, $ptb, helper, restapi, models, executor0) {
+ function ($scope, $ptb, helper, restapi, models, executor0) {
'use strict';
$scope.executorName = executor0.id === -1 ?
@@ -35,7 +35,12 @@ angular.module('dashboard')
$ptb.link('Worker').done(),
$ptb.number('Task Count').done(),
$ptb.button('Quick Links').values([
- {href: restapi.appExecutorConfigLink($scope.app.appId, executor0.id), target: '_blank', text: 'Config', class: 'btn-xs'},
+ {
+ href: restapi.appExecutorConfigLink($scope.app.appId, executor0.id),
+ target: '_blank',
+ text: 'Config',
+ class: 'btn-xs'
+ },
helper.withClickToCopy({text: 'Log Dir.', class: 'btn-xs'}, executor0.logFile)
]
).done()
@@ -54,13 +59,13 @@ angular.module('dashboard')
$scope.metricsConfig = $scope.app.historyMetricsConfig;
$scope.executor = executor0.$data();
updateOverviewTable($scope.executor);
- executor0.$subscribe($scope, function(executor) {
+ executor0.$subscribe($scope, function (executor) {
$scope.executor = executor;
updateOverviewTable(executor);
});
// Delegate JvmMetrics directive to manage metrics
- $scope.queryMetricsFnRef = function(all) {
+ $scope.queryMetricsFnRef = function (all) {
return all ?
models.$get.appExecutorHistMetrics($scope.app.appId, executor0.id) :
models.$get.appExecutorMetrics($scope.app.appId, executor0.id,
http://git-wip-us.apache.org/repos/asf/incubator-gearpump/blob/c176e448/services/dashboard/views/apps/streamingapp/metric_selector.js
----------------------------------------------------------------------
diff --git a/services/dashboard/views/apps/streamingapp/metric_selector.js b/services/dashboard/views/apps/streamingapp/metric_selector.js
index 88fc507..85a4139 100644
--- a/services/dashboard/views/apps/streamingapp/metric_selector.js
+++ b/services/dashboard/views/apps/streamingapp/metric_selector.js
@@ -5,7 +5,7 @@
angular.module('dashboard')
- .directive('metricSelector', function() {
+ .directive('metricSelector', function () {
'use strict';
return {
@@ -16,7 +16,7 @@ angular.module('dashboard')
metricType: '=',
metricDescription: '=?'
},
- link: function(scope) {
+ link: function (scope) {
'use strict';
var metricNameLookup = {
@@ -28,11 +28,11 @@ angular.module('dashboard')
scope.names = {available: _.keys(metricNameLookup)};
scope.names.selected = scope.names.available[1]; // use Receive Throughput by default
- scope.types = function(name) {
+ scope.types = function (name) {
return metricNameLookup[name].type;
};
- scope.$watch('names.selected', function(val) {
+ scope.$watch('names.selected', function (val) {
scope.metricName = metricNameLookup[val].name;
scope.metricType = metricNameLookup[val].type;
scope.metricDescription = val;
http://git-wip-us.apache.org/repos/asf/incubator-gearpump/blob/c176e448/services/dashboard/views/apps/streamingapp/metrics_charts.html
----------------------------------------------------------------------
diff --git a/services/dashboard/views/apps/streamingapp/metrics_charts.html b/services/dashboard/views/apps/streamingapp/metrics_charts.html
index bec4be6..8f2c005 100644
--- a/services/dashboard/views/apps/streamingapp/metrics_charts.html
+++ b/services/dashboard/views/apps/streamingapp/metrics_charts.html
@@ -61,8 +61,8 @@
<div ng-if="processor" class="{{chartGridClass}}">
<div class="metrics-wrapper">
<metrics
- caption="{{averageMesssageProcessingTimeMetricsCaption}}"
- help="{{averageMesssageProcessingTimeMetricsDescription}}"
+ caption="{{averageMessageProcessingTimeMetricsCaption}}"
+ help="{{averageMessageProcessingTimeMetricsDescription}}"
value="{{averageProcessingTime|metric}}" unit="ms">
</metrics>
</div>
http://git-wip-us.apache.org/repos/asf/incubator-gearpump/blob/c176e448/services/dashboard/views/apps/streamingapp/metrics_charts.js
----------------------------------------------------------------------
diff --git a/services/dashboard/views/apps/streamingapp/metrics_charts.js b/services/dashboard/views/apps/streamingapp/metrics_charts.js
index 4699497..a3d5b1d 100644
--- a/services/dashboard/views/apps/streamingapp/metrics_charts.js
+++ b/services/dashboard/views/apps/streamingapp/metrics_charts.js
@@ -5,14 +5,14 @@
angular.module('dashboard')
- .directive('metricsCharts', function() {
+ .directive('metricsCharts', function () {
'use strict';
return {
restrict: 'E',
templateUrl: 'views/apps/streamingapp/metrics_charts.html',
scope: true, // inherit parent scope
- controller: ['$scope', '$interval', 'helper', 'models', function($scope, $interval, helper, models) {
+ controller: ['$scope', '$interval', 'helper', 'models', function ($scope, $interval, helper, models) {
'use strict';
var metricsProvider = $scope.dag;
@@ -34,7 +34,7 @@ angular.module('dashboard')
recentChartPoints--; // ProcessorFilter will actually reduce one point
histChartPoints--;
var updateRecentMetricsPromise;
- $scope.$on('$destroy', function() {
+ $scope.$on('$destroy', function () {
$interval.cancel(updateRecentMetricsPromise);
});
@@ -48,7 +48,7 @@ angular.module('dashboard')
yAxisLabelFormatter: helper.yAxisLabelFormatterWithoutValue0(),
visibleDataPointsNum: visibleDataPointsNum,
data: dataPoints,
- valueFormatter: function(value) {
+ valueFormatter: function (value) {
return helper.readableMetricValue(value) + ' ' + unit;
}
},
@@ -94,7 +94,7 @@ angular.module('dashboard')
models.$get.appMetrics($scope.app.appId, $scope.metricsConfig.retainRecentDataIntervalMs) :
models.$get.appHistMetrics($scope.app.appId);
- queryMetricsPromise.then(function(metrics) {
+ queryMetricsPromise.then(function (metrics) {
var data = metrics.$data();
var timeResolution = $scope.isShowingCurrentMetrics ?
$scope.metricsConfig.retainRecentDataIntervalMs :
@@ -143,7 +143,7 @@ angular.module('dashboard')
}
function metricsToChartData(metrics) {
- return _.map(metrics, function(value, timeString) {
+ return _.map(metrics, function (value, timeString) {
return {
x: helper.timeToChartTimeLabel(Number(timeString), /*shortForm=*/$scope.isShowingCurrentMetrics),
y: helper.metricRounded(value)
@@ -152,7 +152,7 @@ angular.module('dashboard')
}
$scope.isShowingCurrentMetrics = true;
- $scope.$watch('isShowingCurrentMetrics', function(newVal, oldVal) {
+ $scope.$watch('isShowingCurrentMetrics', function (newVal, oldVal) {
if (angular.equals(newVal, oldVal)) {
return; // ignore initial notification
}
@@ -161,7 +161,7 @@ angular.module('dashboard')
// common watching
var initial = true;
- $scope.$watch('dag.metricsUpdateTime', function() {
+ $scope.$watch('dag.metricsUpdateTime', function () {
if (initial) {
// note that, the latest metrics do not contain enough points for drawing charts, so
// we request recent metrics from server.
http://git-wip-us.apache.org/repos/asf/incubator-gearpump/blob/c176e448/services/dashboard/views/apps/streamingapp/metrics_table.html
----------------------------------------------------------------------
diff --git a/services/dashboard/views/apps/streamingapp/metrics_table.html b/services/dashboard/views/apps/streamingapp/metrics_table.html
index 3d0c7d1..fcfe201 100644
--- a/services/dashboard/views/apps/streamingapp/metrics_table.html
+++ b/services/dashboard/views/apps/streamingapp/metrics_table.html
@@ -24,9 +24,9 @@
</sortable-table>
<sortable-table
ng-if="metricType == 'histogram'"
- search-bind="search"
- columns-bind="histogramMetricsTable.cols"
- records-bind="histogramMetricsTable.rows"
- pagination="10">
+ search-bind="search"
+ columns-bind="histogramMetricsTable.cols"
+ records-bind="histogramMetricsTable.rows"
+ pagination="10">
</sortable-table>
</div>
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/incubator-gearpump/blob/c176e448/services/dashboard/views/apps/streamingapp/metrics_table.js
----------------------------------------------------------------------
diff --git a/services/dashboard/views/apps/streamingapp/metrics_table.js b/services/dashboard/views/apps/streamingapp/metrics_table.js
index 16dcd05..57dc58e 100644
--- a/services/dashboard/views/apps/streamingapp/metrics_table.js
+++ b/services/dashboard/views/apps/streamingapp/metrics_table.js
@@ -6,7 +6,7 @@
angular.module('dashboard')
.config(['$stateProvider',
- function($stateProvider) {
+ function ($stateProvider) {
'use strict';
$stateProvider
@@ -18,14 +18,14 @@ angular.module('dashboard')
}])
.controller('StreamingAppMetricsCtrl', ['$scope', '$sortableTableBuilder',
- function($scope, $stb) {
+ function ($scope, $stb) {
'use strict';
- $scope.$watch('dag.metricsUpdateTime', function() {
+ $scope.$watch('dag.metricsUpdateTime', function () {
reloadMetricsAndUpdateMetricsTable();
});
- $scope.$watch('metricName', function() {
+ $scope.$watch('metricName', function () {
reloadMetricsAndUpdateMetricsTable();
});
@@ -74,10 +74,10 @@ angular.module('dashboard')
function updateMetricsTable(table, metrics) {
table.rows = $stb.$update(table.rows,
- _.map(metrics, function(metric, processorId) {
+ _.map(metrics, function (metric, processorId) {
var processor = $scope.dag.getProcessor(processorId);
var processorUrl = processor.active ?
- '#/apps/streamingapp/' + $scope.app.appId + '/processor/' + processorId : '';
+ '#/apps/streamingapp/' + $scope.app.appId + '/processor/' + processorId : '';
return angular.merge({
active: {
tooltip: processor.active ? 'Active' : (processor.replaced ? 'Replaced by another processor' : 'Dead'),
http://git-wip-us.apache.org/repos/asf/incubator-gearpump/blob/c176e448/services/dashboard/views/apps/streamingapp/overview.js
----------------------------------------------------------------------
diff --git a/services/dashboard/views/apps/streamingapp/overview.js b/services/dashboard/views/apps/streamingapp/overview.js
index 8a8b14f..c0b424b 100644
--- a/services/dashboard/views/apps/streamingapp/overview.js
+++ b/services/dashboard/views/apps/streamingapp/overview.js
@@ -6,7 +6,7 @@
angular.module('dashboard')
.config(['$stateProvider',
- function($stateProvider) {
+ function ($stateProvider) {
'use strict';
$stateProvider
@@ -18,7 +18,7 @@ angular.module('dashboard')
}])
.controller('StreamingAppOverviewCtrl', ['$scope', '$propertyTableBuilder', 'helper', 'models',
- function($scope, $ptb, helper, models) {
+ function ($scope, $ptb, helper, models) {
'use strict';
$scope.appSummary = [
@@ -43,15 +43,15 @@ angular.module('dashboard')
]);
}
- $scope.$watch('app', function(app) {
+ $scope.$watch('app', function (app) {
updateSummaryTable(app);
});
$scope.alerts = [];
models.$get.appAlerts($scope.app.appId)
- .then(function(alerts0) {
+ .then(function (alerts0) {
$scope.alerts = alerts0.$data();
- alerts0.$subscribe($scope, function(alerts) {
+ alerts0.$subscribe($scope, function (alerts) {
$scope.alerts = alerts;
});
});
http://git-wip-us.apache.org/repos/asf/incubator-gearpump/blob/c176e448/services/dashboard/views/apps/streamingapp/popups/dag_edit.js
----------------------------------------------------------------------
diff --git a/services/dashboard/views/apps/streamingapp/popups/dag_edit.js b/services/dashboard/views/apps/streamingapp/popups/dag_edit.js
index 58daeb5..205328a 100644
--- a/services/dashboard/views/apps/streamingapp/popups/dag_edit.js
+++ b/services/dashboard/views/apps/streamingapp/popups/dag_edit.js
@@ -5,7 +5,7 @@
angular.module('dashboard')
.controller('StreamingAppDagEditCtrl', ['$scope', 'models',
- function($scope, models) {
+ function ($scope, models) {
'use strict';
var options = $scope.modifyOptions || {};
@@ -18,18 +18,18 @@ angular.module('dashboard')
$scope.parallelism = processor.parallelism;
$scope.invalid = {};
- $scope.canReplace = function() {
+ $scope.canReplace = function () {
return !_.includes($scope.invalid, true) && $scope.isDirty();
};
- $scope.isDirty = function() {
+ $scope.isDirty = function () {
// do not require same type!
return $scope.taskClass != processor.taskClass ||
$scope.description != processor.description ||
$scope.parallelism != processor.parallelism;
};
- $scope.submit = function() {
+ $scope.submit = function () {
var files = [$scope.jar];
var fileFormNames = ['jar'];
var newProcessor = {
@@ -52,7 +52,7 @@ angular.module('dashboard')
};
}
- $scope.dag.replaceProcessor(files, fileFormNames, $scope.app.appId, $scope.processorId, newProcessor, function(response) {
+ $scope.dag.replaceProcessor(files, fileFormNames, $scope.app.appId, $scope.processorId, newProcessor, function (response) {
$scope.shouldNoticeSubmitFailed = !response.success;
if (response.success) {
$scope.$hide();
http://git-wip-us.apache.org/repos/asf/incubator-gearpump/blob/c176e448/services/dashboard/views/apps/streamingapp/processor.html
----------------------------------------------------------------------
diff --git a/services/dashboard/views/apps/streamingapp/processor.html b/services/dashboard/views/apps/streamingapp/processor.html
index d992fdb..137f5d7 100644
--- a/services/dashboard/views/apps/streamingapp/processor.html
+++ b/services/dashboard/views/apps/streamingapp/processor.html
@@ -32,7 +32,8 @@
<div class="row">
<div class="col-md-6">
<h4 ng-style="{'margin-bottom': shouldPaginateTasks ? '7px' : ''}">Tasks
- <remark style="font-size: 15.6px" type="info" placement="right" tooltip="{{whatIsTask}}"></remark>
+ <remark style="font-size: 15.6px" type="info" placement="right"
+ tooltip="{{whatIsTask}}"></remark>
<div ng-if="shouldPaginateTasks"
style="display: inline-block; font-size: 12px; font-weight: 400;">
<processor-task-pager
@@ -50,6 +51,7 @@
</div>
<div class="col-md-12">
<h5>Distribution of {{metricDescription}}</h5>
+
<div style="height: 110px">
<bar-chart
ng-if="tasksBarChart != null"
@@ -67,7 +69,8 @@
style="min-height: 200px">
<h4>Task Metrics Inspector</h4>
<ui-select theme="select2" multiple limit="1" ng-model="tasks.selected">
- <ui-select-match placeholder="Click here to pick tasks for inspection...">{{$item}}</ui-select-match>
+ <ui-select-match placeholder="Click here to pick tasks for inspection...">{{$item}}
+ </ui-select-match>
<ui-select-choices repeat="task in tasks.available|filter:$select.search">
<span ng-bind="task"></span>
</ui-select-choices>
@@ -75,7 +78,9 @@
<div ng-if="tasks.selected.length>0">
<br/>
- <div ng-include src="'views/apps/streamingapp/processor_task_charts.html?'+tasks.selected.length"
+
+ <div ng-include
+ src="'views/apps/streamingapp/processor_task_charts.html?'+tasks.selected.length"
ng-controller="StreamingAppProcessorTaskChartsCtrl"></div>
</div>
</div>
http://git-wip-us.apache.org/repos/asf/incubator-gearpump/blob/c176e448/services/dashboard/views/apps/streamingapp/processor.js
----------------------------------------------------------------------
diff --git a/services/dashboard/views/apps/streamingapp/processor.js b/services/dashboard/views/apps/streamingapp/processor.js
index ec60214..ae271f5 100644
--- a/services/dashboard/views/apps/streamingapp/processor.js
+++ b/services/dashboard/views/apps/streamingapp/processor.js
@@ -6,7 +6,7 @@
angular.module('dashboard')
.config(['$stateProvider',
- function($stateProvider) {
+ function ($stateProvider) {
'use strict';
$stateProvider
@@ -19,7 +19,7 @@ angular.module('dashboard')
.controller('StreamingAppProcessorCtrl', ['$scope', '$interval', '$stateParams', '$propertyTableBuilder',
'i18n', 'models', 'conf', 'helper',
- function($scope, $interval, $stateParams, $ptb, i18n, models, conf, helper) {
+ function ($scope, $interval, $stateParams, $ptb, i18n, models, conf, helper) {
'use strict';
$scope.whatIsProcessor = i18n.terminology.processor;
@@ -63,10 +63,10 @@ angular.module('dashboard')
// query task metrics
var promise;
- $scope.$on('$destroy', function() {
+ $scope.$on('$destroy', function () {
$interval.cancel(promise);
});
- $scope.$watch('metricName', function() {
+ $scope.$watch('metricName', function () {
queryMetrics();
});
@@ -78,7 +78,7 @@ angular.module('dashboard')
if (!requesting && $scope.metricName) {
requesting = true;
models.$get.appTaskLatestMetricValues(
- $scope.app.appId, $scope.processor.id, $scope.metricName, $scope.taskRange).then(function(metrics) {
+ $scope.app.appId, $scope.processor.id, $scope.metricName, $scope.taskRange).then(function (metrics) {
if (metrics.hasOwnProperty($scope.metricName)) {
$scope.taskMetrics = metrics[$scope.metricName];
}
@@ -94,10 +94,10 @@ angular.module('dashboard')
$scope.taskRange = {
start: 0,
stop: $scope.shouldPaginateTasks ?
- $scope.queryLimit - 1 : $scope.processor.parallelism - 1
+ $scope.queryLimit - 1 : $scope.processor.parallelism - 1
};
- $scope.$watch('taskRange', function(range) {
+ $scope.$watch('taskRange', function (range) {
if (range.hasOwnProperty('start')) {
updateTaskSelection(range);
}
@@ -106,9 +106,9 @@ angular.module('dashboard')
function updateTaskSelection(range) {
$scope.tasks = {
selected: [],
- available: function() {
+ available: function () {
var count = range.stop - range.start + 1;
- return _.times(count, function(i) {
+ return _.times(count, function (i) {
return 'T' + (i + range.start);
});
}()
@@ -122,17 +122,17 @@ angular.module('dashboard')
seriesNames: [''],
barMinWidth: 4,
barMinSpacing: 1,
- valueFormatter: function(value) {
+ valueFormatter: function (value) {
var unit = $scope.metricType === 'meter' ? 'msg/s' : 'ms';
return helper.readableMetricValue(value) + ' ' + unit;
},
- data: _.map($scope.tasks.available.length, function(taskName) {
+ data: _.map($scope.tasks.available.length, function (taskName) {
return {x: taskName, y: 0};
})
}
};
- $scope.$watch('taskMetrics', function(metricsSelection) {
+ $scope.$watch('taskMetrics', function (metricsSelection) {
if (angular.isObject(metricsSelection)) {
updateBarChartData(metricsSelection);
}
@@ -144,12 +144,12 @@ angular.module('dashboard')
return;
}
- var data = _.map($scope.tasks.available, function(taskName) {
+ var data = _.map($scope.tasks.available, function (taskName) {
return {x: taskName};
});
var i = 0;
var metricField = $scope.metricType === 'meter' ? 'movingAverage1m' : 'mean';
- _.forEach(metricsSelection, function(metric) {
+ _.forEach(metricsSelection, function (metric) {
data[i].y = helper.metricRounded(metric[metricField]);
i++;
});
http://git-wip-us.apache.org/repos/asf/incubator-gearpump/blob/c176e448/services/dashboard/views/apps/streamingapp/processor_task_charts.js
----------------------------------------------------------------------
diff --git a/services/dashboard/views/apps/streamingapp/processor_task_charts.js b/services/dashboard/views/apps/streamingapp/processor_task_charts.js
index 975cc30..3d93232 100644
--- a/services/dashboard/views/apps/streamingapp/processor_task_charts.js
+++ b/services/dashboard/views/apps/streamingapp/processor_task_charts.js
@@ -7,25 +7,25 @@ angular.module('dashboard')
// todo: refactoring required
.controller('StreamingAppProcessorTaskChartsCtrl', ['$scope', 'helper', 'models',
- function($scope, helper, models) {
+ function ($scope, helper, models) {
'use strict';
// rebuild the charts when `tasks` is changed.
- $scope.$watchCollection('tasks', function(tasks) {
+ $scope.$watchCollection('tasks', function (tasks) {
if (!tasks.selected) {
console.warn('should not load this page');
return;
}
// todo: For the time being we can only query one task
- $scope.selectedTaskIds = _.map(tasks.selected, function(taskName) {
+ $scope.selectedTaskIds = _.map(tasks.selected, function (taskName) {
return Number(taskName.substr(1));
});
var range = {start: $scope.selectedTaskIds[0], stop: $scope.selectedTaskIds[0]};
models.$get.appTaskLatestMetricValues(
- $scope.app.appId, $scope.processor.id, /*metricName=*/'', range).then(function(metrics0) {
+ $scope.app.appId, $scope.processor.id, /*metricName=*/'', range).then(function (metrics0) {
$scope.selectedMetrics = metrics0.$data();
- metrics0.$subscribe($scope, function(metrics) {
+ metrics0.$subscribe($scope, function (metrics) {
$scope.selectedMetrics = metrics;
});
});
@@ -36,20 +36,20 @@ angular.module('dashboard')
height: '108px',
margin: {right: 15},
visibleDataPointsNum: recentChartPoints,
- data: _.times(recentChartPoints, function() {
+ data: _.times(recentChartPoints, function () {
return {x: '', y: '-'};
}),
seriesNames: tasks.selected
};
var throughputChartOptions = angular.merge({
- valueFormatter: function(value) {
+ valueFormatter: function (value) {
return helper.readableMetricValue(value) + ' msg/s';
}
}, lineChartOptionBase);
var durationChartOptions = angular.merge({
- valueFormatter: function(value) {
+ valueFormatter: function (value) {
return helper.readableMetricValue(value) + ' ms';
}
}, lineChartOptionBase);
@@ -67,7 +67,7 @@ angular.module('dashboard')
options: durationChartOptions
};
- $scope.$watchCollection('selectedMetrics', function(metrics) {
+ $scope.$watchCollection('selectedMetrics', function (metrics) {
if (angular.isObject(metrics)) {
updateMetricsCharts(metrics);
}
@@ -102,7 +102,7 @@ angular.module('dashboard')
}
function extractSelectedMetricField(metrics, field) {
- return _.map($scope.selectedTaskIds, function(taskId) {
+ return _.map($scope.selectedTaskIds, function (taskId) {
return helper.metricRounded(metrics[taskId][field]);
});
}
http://git-wip-us.apache.org/repos/asf/incubator-gearpump/blob/c176e448/services/dashboard/views/apps/streamingapp/processor_task_pager.js
----------------------------------------------------------------------
diff --git a/services/dashboard/views/apps/streamingapp/processor_task_pager.js b/services/dashboard/views/apps/streamingapp/processor_task_pager.js
index 63d57ae..f3e5574 100644
--- a/services/dashboard/views/apps/streamingapp/processor_task_pager.js
+++ b/services/dashboard/views/apps/streamingapp/processor_task_pager.js
@@ -5,7 +5,7 @@
angular.module('dashboard')
- .directive('processorTaskPager', function() {
+ .directive('processorTaskPager', function () {
'use strict';
return {
@@ -17,13 +17,13 @@ angular.module('dashboard')
count: '=',
queryLimit: '='
},
- link: function(scope) {
+ link: function (scope) {
'use strict';
var pages = Math.ceil(scope.count / scope.queryLimit);
var pageIndex = 0;
- scope.switchTasks = function(step) {
+ scope.switchTasks = function (step) {
if (pageIndex + step >= 0 && pageIndex + step < pages) {
pageIndex += step;
var start = pageIndex * scope.queryLimit;
http://git-wip-us.apache.org/repos/asf/incubator-gearpump/blob/c176e448/services/dashboard/views/apps/streamingapp/processor_task_table.js
----------------------------------------------------------------------
diff --git a/services/dashboard/views/apps/streamingapp/processor_task_table.js b/services/dashboard/views/apps/streamingapp/processor_task_table.js
index 79fc56e..9793d3a 100644
--- a/services/dashboard/views/apps/streamingapp/processor_task_table.js
+++ b/services/dashboard/views/apps/streamingapp/processor_task_table.js
@@ -6,10 +6,10 @@
angular.module('dashboard')
.controller('StreamingAppProcessorTaskTableCtrl', ['$scope', '$sortableTableBuilder',
- function($scope, $stb) {
+ function ($scope, $stb) {
'use strict';
- $scope.$watch('taskMetrics', function(metrics) {
+ $scope.$watch('taskMetrics', function (metrics) {
var tableObj = $scope.metricType === 'meter' ?
$scope.meterMetricsTable : $scope.histogramMetricsTable;
updateMetricsTable(tableObj, metrics);
@@ -45,7 +45,7 @@ angular.module('dashboard')
function updateMetricsTable(table, metrics) {
table.rows = $stb.$update(table.rows,
- _.map(metrics, function(metric, taskId) {
+ _.map(metrics, function (metric, taskId) {
return angular.extend(metric, {
task: 'T' + taskId,
id: Number(taskId)
http://git-wip-us.apache.org/repos/asf/incubator-gearpump/blob/c176e448/services/dashboard/views/apps/streamingapp/streamingapp.html
----------------------------------------------------------------------
diff --git a/services/dashboard/views/apps/streamingapp/streamingapp.html b/services/dashboard/views/apps/streamingapp/streamingapp.html
index 77ba78a..a6e3914 100644
--- a/services/dashboard/views/apps/streamingapp/streamingapp.html
+++ b/services/dashboard/views/apps/streamingapp/streamingapp.html
@@ -18,7 +18,8 @@
<metrics
ng-if="app.clock"
caption="Application Clock"
- help="{{appClockConcern||whatIsAppClock}}" remark-type="{{appClockConcern ? 'warning' : 'info'}}"
+ help="{{appClockConcern||whatIsAppClock}}"
+ remark-type="{{appClockConcern ? 'warning' : 'info'}}"
click-help="switchToDagTab()"
value="{{app.clock|date:'HH:mm:ss'}}"
sub-text="{{app.clock|date:'yyyy/MM/dd'}}"></metrics>
@@ -29,7 +30,8 @@
value="not started"></metrics>
</div>
<div class="col-md-2 col-sm-3 col-xs-4">
- <metrics value="{{dag.getProcessorCount()}}" unit="processor" unit-plural="processors"></metrics>
+ <metrics value="{{dag.getProcessorCount()}}" unit="processor"
+ unit-plural="processors"></metrics>
<metrics value="{{size(app.executors)}}" unit="executor" unit-plural="executors"></metrics>
</div>
</div>
http://git-wip-us.apache.org/repos/asf/incubator-gearpump/blob/c176e448/services/dashboard/views/apps/streamingapp/streamingapp.js
----------------------------------------------------------------------
diff --git a/services/dashboard/views/apps/streamingapp/streamingapp.js b/services/dashboard/views/apps/streamingapp/streamingapp.js
index 53f0bf4..ad85ccd 100644
--- a/services/dashboard/views/apps/streamingapp/streamingapp.js
+++ b/services/dashboard/views/apps/streamingapp/streamingapp.js
@@ -6,7 +6,7 @@
angular.module('dashboard')
.config(['$stateProvider',
- function($stateProvider) {
+ function ($stateProvider) {
'use strict';
$stateProvider
@@ -16,7 +16,7 @@ angular.module('dashboard')
templateUrl: 'views/apps/streamingapp/streamingapp.html',
controller: 'StreamingAppCtrl',
resolve: {
- app0: ['$stateParams', 'models', function($stateParams, models) {
+ app0: ['$stateParams', 'models', function ($stateParams, models) {
return models.$get.app($stateParams.appId);
}]
}
@@ -27,7 +27,7 @@ angular.module('dashboard')
* This controller is used to obtain app. All nested views will read status from here.
*/
.controller('StreamingAppCtrl', ['$scope', '$state', 'i18n', 'helper', 'models', 'app0',
- function($scope, $state, i18n, helper, models, app0) {
+ function ($scope, $state, i18n, helper, models, app0) {
'use strict';
$scope.whatIsAppClock = i18n.terminology.appClock;
@@ -37,14 +37,14 @@ angular.module('dashboard')
$scope.uptimeCompact = helper.readableDuration(app0.uptime);
$scope.dag = models.createDag(app0.clock, app0.processors, app0.dag.edgeList);
- app0.$subscribe($scope, function(app) {
+ app0.$subscribe($scope, function (app) {
updateAppDetails(app);
- }, /*onerror=*/ function() {
+ }, /*onerror=*/ function () {
// manually reset status fields on an error response
var app = angular.copy($scope.app);
app.status = 'terminated';
app.isRunning = false;
- _.forEach(app.executors, function(executor) {
+ _.forEach(app.executors, function (executor) {
executor.status = 'terminated';
executor.isRunning = false;
});
@@ -58,9 +58,9 @@ angular.module('dashboard')
}
models.$get.appStallingTasks(app0.appId)
- .then(function(tasks0) {
+ .then(function (tasks0) {
updateStallingTasks(tasks0.$data());
- tasks0.$subscribe($scope, function(tasks) {
+ tasks0.$subscribe($scope, function (tasks) {
updateStallingTasks(tasks);
});
});
@@ -69,30 +69,31 @@ angular.module('dashboard')
"Application clock does not go forward. Click here to check red processor(s)." : undefined;
$scope.dag.setStallingTasks(tasks);
}
- $scope.switchToDagTab = function() {
+
+ $scope.switchToDagTab = function () {
$state.go('streamingapp.dag');
};
// As metrics will be collected shortly after application is started, we should not receive initial metrics
// at the view resolving stage.
models.$subscribe($scope,
- function() {
+ function () {
return models.$get.appLatestMetrics(app0.appId);
},
- function(metrics0) {
+ function (metrics0) {
$scope.metrics = metrics0.$data();
- metrics0.$subscribe($scope, function(metrics) {
+ metrics0.$subscribe($scope, function (metrics) {
$scope.metrics = metrics;
});
});
- $scope.$watch('metrics', function(metrics) {
+ $scope.$watch('metrics', function (metrics) {
if (angular.isObject(metrics)) {
$scope.dag.updateLatestMetrics(metrics);
}
});
// Angular template cannot call the function directly, so export a function.
- $scope.size = function(obj) {
+ $scope.size = function (obj) {
return Object.keys(obj).length;
};
@@ -102,7 +103,7 @@ angular.module('dashboard')
$scope.receiveThroughputMetricsDescription = 'Messages are received by sink processors';
$scope.messageLatencyMetricsCaption = 'End-to-End Latency';
$scope.messageLatencyMetricsDescription = 'The largest latency from a source processor to a sink processor. The value is the sum of message receive latency plus message processing time of all processors on the path (except the source processor).';
- $scope.averageMesssageProcessingTimeMetricsCaption = 'Average Message Processing Time';
- $scope.averageMesssageProcessingTimeMetricsDescription = 'The processing time is the duration from a message is received by a processor and to the message is sent to the next stop';
+ $scope.averageMessageProcessingTimeMetricsCaption = 'Average Message Processing Time';
+ $scope.averageMessageProcessingTimeMetricsDescription = 'The processing time is the duration from a message is received by a processor and to the message is sent to the next stop';
}])
;
http://git-wip-us.apache.org/repos/asf/incubator-gearpump/blob/c176e448/services/dashboard/views/apps/streamingapp/vis/network_style.js
----------------------------------------------------------------------
diff --git a/services/dashboard/views/apps/streamingapp/vis/network_style.js b/services/dashboard/views/apps/streamingapp/vis/network_style.js
index 63f56ac..498cdfb 100644
--- a/services/dashboard/views/apps/streamingapp/vis/network_style.js
+++ b/services/dashboard/views/apps/streamingapp/vis/network_style.js
@@ -5,14 +5,14 @@
angular.module('dashboard')
- .factory('$visNetworkStyle', function() {
+ .factory('$visNetworkStyle', function () {
'use strict';
var fontFace = 'lato,roboto,"helvetica neue","segoe ui",arial,helvetica,sans-serif';
var maxNodeRadius = 16;
var self = {
- newOptions: function(height) {
+ newOptions: function (height) {
return {
autoResize: true, // The network will automatically detect size changes and redraw itself accordingly
interaction: {
@@ -45,7 +45,7 @@ angular.module('dashboard')
}
};
},
- newHierarchicalLayoutOptions: function(flags) {
+ newHierarchicalLayoutOptions: function (flags) {
var verticalMargin = 28;
var levelDistance = 85;
var chartMinHeight = 240;
@@ -61,16 +61,16 @@ angular.module('dashboard')
}
});
},
- newData: function() {
+ newData: function () {
return {
nodes: new vis.DataSet(),
edges: new vis.DataSet()
};
},
- nodeRadiusRange: function() {
+ nodeRadiusRange: function () {
return [3, 16];
},
- nodeColor: function(concern) {
+ nodeColor: function (concern) {
var colorSet = concern ? {
border: 'rgb(138,1,12)',
background: 'rgb(248,106,91)'
@@ -85,16 +85,16 @@ angular.module('dashboard')
}
return result;
},
- edgeWidthRange: function() {
+ edgeWidthRange: function () {
return [1, 5];
},
- edgeArrowSizeRange: function() {
+ edgeArrowSizeRange: function () {
return [0.5, 0.1];
},
- edgeOpacityRange: function() {
+ edgeOpacityRange: function () {
return [0.4, 1];
},
- edgeColorSet: function(alive) {
+ edgeColorSet: function (alive) {
return alive ? {
color: '#2B7CE9',
hover: '#2B7CE9',
@@ -106,7 +106,7 @@ angular.module('dashboard')
};
},
/** Return label of processor name */
- processorNameAsLabel: function(processor) {
+ processorNameAsLabel: function (processor) {
return '[' + processor.id + '] ' +
(processor.description || _.last(processor.taskClass.split('.')));
}
http://git-wip-us.apache.org/repos/asf/incubator-gearpump/blob/c176e448/services/dashboard/views/apps/submit/submit.html
----------------------------------------------------------------------
diff --git a/services/dashboard/views/apps/submit/submit.html b/services/dashboard/views/apps/submit/submit.html
index 2b15000..a2245cb 100644
--- a/services/dashboard/views/apps/submit/submit.html
+++ b/services/dashboard/views/apps/submit/submit.html
@@ -20,8 +20,8 @@
<span ng-if="error">
Check out the
<span class="help-text"
- bs-tooltip="error" html="true" placement="bottom"
- ng-click="showErrorInNewWin()">reason
+ bs-tooltip="error" html="true" placement="bottom"
+ ng-click="showErrorInNewWin()">reason
<i ng-if="hasStackTrace"
class="fa fa-external-link"></i></span>.
</span>
@@ -41,10 +41,11 @@
ng-model="conf" accept-pattern="{{confFileSuffix}}"></form-control>
<!-- input 3 -->
<form-control
- ng-if="!isStormApp"
+ ng-hide="isStormApp"
type="integer" min="1" label="Executors"
help="The number of executor (JVM) processes to be spawned in the cluster."
- ng-model="executorNum"></form-control>
+ ng-model="executorNum" ng-init="executorNum = 1"></form-control>
+
<!-- input 4 -->
<form-control
type="text" label="Arguments"
http://git-wip-us.apache.org/repos/asf/incubator-gearpump/blob/c176e448/services/dashboard/views/apps/submit/submit.js
----------------------------------------------------------------------
diff --git a/services/dashboard/views/apps/submit/submit.js b/services/dashboard/views/apps/submit/submit.js
index 23c806f..f533794 100644
--- a/services/dashboard/views/apps/submit/submit.js
+++ b/services/dashboard/views/apps/submit/submit.js
@@ -5,12 +5,12 @@
angular.module('dashboard')
.controller('AppSubmitCtrl', ['$scope', 'restapi',
- function($scope, restapi) {
+ function ($scope, restapi) {
'use strict';
$scope.dialogTitle = 'Submit Gearpump Application';
$scope.confFileSuffix = '.conf';
- $scope.executorNum = 1;
+
var submitFn = restapi.submitUserApp;
if ($scope.isStormApp) {
$scope.dialogTitle = 'Submit Storm Application';
@@ -18,11 +18,11 @@ angular.module('dashboard')
submitFn = restapi.submitStormApp;
}
- $scope.canSubmit = function() {
+ $scope.canSubmit = function () {
return $scope.jar && !$scope.uploading;
};
- $scope.submit = function() {
+ $scope.submit = function () {
var files = [$scope.jar];
var fileFormNames = ['jar'];
if ($scope.conf) {
@@ -30,7 +30,7 @@ angular.module('dashboard')
fileFormNames.push('configfile');
}
$scope.uploading = true;
- submitFn(files, fileFormNames, $scope.executorNum, $scope.launchArgs, function(response) {
+ submitFn(files, fileFormNames, $scope.executorNum, $scope.launchArgs, function (response) {
$scope.shouldNoticeSubmitFailed = !response.success;
$scope.uploading = false;
if (response.success) {
@@ -38,7 +38,7 @@ angular.module('dashboard')
} else {
$scope.error = response.error;
$scope.hasStackTrace = response.stackTrace.length > 0;
- $scope.showErrorInNewWin = function() {
+ $scope.showErrorInNewWin = function () {
if ($scope.hasStackTrace) {
var popup = window.open('', 'Error Log');
var html = [$scope.error].concat(response.stackTrace).join('\n');
http://git-wip-us.apache.org/repos/asf/incubator-gearpump/blob/c176e448/services/dashboard/views/cluster/master/master.js
----------------------------------------------------------------------
diff --git a/services/dashboard/views/cluster/master/master.js b/services/dashboard/views/cluster/master/master.js
index 44a38f7..f876710 100644
--- a/services/dashboard/views/cluster/master/master.js
+++ b/services/dashboard/views/cluster/master/master.js
@@ -6,7 +6,7 @@
angular.module('dashboard')
.config(['$stateProvider',
- function($stateProvider) {
+ function ($stateProvider) {
'use strict';
$stateProvider
@@ -15,7 +15,7 @@ angular.module('dashboard')
templateUrl: 'views/cluster/master/master.html',
controller: 'MasterCtrl',
resolve: {
- master0: ['models', function(models) {
+ master0: ['models', function (models) {
return models.$get.master();
}]
}
@@ -23,7 +23,7 @@ angular.module('dashboard')
}])
.controller('MasterCtrl', ['$scope', '$propertyTableBuilder', 'i18n', 'helper', 'models', 'master0',
- function($scope, $ptb, i18n, helper, models, master0) {
+ function ($scope, $ptb, i18n, helper, models, master0) {
'use strict';
$scope.whatIsMaster = i18n.terminology.master;
@@ -54,12 +54,12 @@ angular.module('dashboard')
$scope.metricsConfig = master0.historyMetricsConfig;
updateSummaryTable(master0);
- master0.$subscribe($scope, function(master) {
+ master0.$subscribe($scope, function (master) {
updateSummaryTable(master);
});
// Delegate JvmMetrics directive to manage metrics
- $scope.queryMetricsFnRef = function(all) {
+ $scope.queryMetricsFnRef = function (all) {
return all ?
models.$get.masterHistMetrics() :
models.$get.masterMetrics($scope.metricsConfig.retainRecentDataIntervalMs);
http://git-wip-us.apache.org/repos/asf/incubator-gearpump/blob/c176e448/services/dashboard/views/cluster/workers/add_worker.html
----------------------------------------------------------------------
diff --git a/services/dashboard/views/cluster/workers/add_worker.html b/services/dashboard/views/cluster/workers/add_worker.html
index d8a1ecf..b340a16 100644
--- a/services/dashboard/views/cluster/workers/add_worker.html
+++ b/services/dashboard/views/cluster/workers/add_worker.html
@@ -16,6 +16,7 @@
<span aria-hidden="true">×</span>
</button>
<h5 style="margin-top: 0">Something went wrong!</h5>
+
<p ng-bind="error"></p>
</div>
</div>
http://git-wip-us.apache.org/repos/asf/incubator-gearpump/blob/c176e448/services/dashboard/views/cluster/workers/add_worker.js
----------------------------------------------------------------------
diff --git a/services/dashboard/views/cluster/workers/add_worker.js b/services/dashboard/views/cluster/workers/add_worker.js
index ab4b42e..eb5aa92 100644
--- a/services/dashboard/views/cluster/workers/add_worker.js
+++ b/services/dashboard/views/cluster/workers/add_worker.js
@@ -5,13 +5,13 @@
angular.module('dashboard')
.controller('AddWorkerCtrl', ['$scope', 'restapi', 'i18n',
- function($scope, restapi, i18n) {
+ function ($scope, restapi, i18n) {
'use strict';
$scope.description = i18n.terminology.worker;
$scope.count = 1;
- $scope.add = function() {
+ $scope.add = function () {
$scope.adding = true;
$scope.shouldNoticeSubmitFailed = false;
return restapi.addWorker(
http://git-wip-us.apache.org/repos/asf/incubator-gearpump/blob/c176e448/services/dashboard/views/cluster/workers/worker/worker.html
----------------------------------------------------------------------
diff --git a/services/dashboard/views/cluster/workers/worker/worker.html b/services/dashboard/views/cluster/workers/worker/worker.html
index f174f18..e290874 100644
--- a/services/dashboard/views/cluster/workers/worker/worker.html
+++ b/services/dashboard/views/cluster/workers/worker/worker.html
@@ -21,7 +21,8 @@
value="{{worker.slots.usage|number:1}}" unit="%"></metrics>
</div>
<div class="col-sm-2 col-xs-4">
- <metrics value="{{worker.executors.length}}" unit="executor" unit-plural="executors"></metrics>
+ <metrics value="{{worker.executors.length}}" unit="executor"
+ unit-plural="executors"></metrics>
<metrics value="{{appsCount}}" unit="application" unit-plural="applications"></metrics>
</div>
</div>
http://git-wip-us.apache.org/repos/asf/incubator-gearpump/blob/c176e448/services/dashboard/views/cluster/workers/worker/worker.js
----------------------------------------------------------------------
diff --git a/services/dashboard/views/cluster/workers/worker/worker.js b/services/dashboard/views/cluster/workers/worker/worker.js
index ad92a74..3291a59 100644
--- a/services/dashboard/views/cluster/workers/worker/worker.js
+++ b/services/dashboard/views/cluster/workers/worker/worker.js
@@ -6,7 +6,7 @@
angular.module('dashboard')
.config(['$stateProvider',
- function($stateProvider) {
+ function ($stateProvider) {
'use strict';
$stateProvider
@@ -19,10 +19,10 @@ angular.module('dashboard')
templateUrl: 'views/cluster/workers/worker/worker.html',
controller: 'WorkerCtrl',
resolve: {
- worker0: ['$stateParams', 'models', function($stateParams, models) {
+ worker0: ['$stateParams', 'models', function ($stateParams, models) {
return models.$get.worker($stateParams.workerId);
}],
- apps0: ['models', function(models) {
+ apps0: ['models', function (models) {
return models.$get.apps();
}]
}
@@ -31,7 +31,7 @@ angular.module('dashboard')
.controller('WorkerCtrl', ['$scope', '$propertyTableBuilder', '$sortableTableBuilder',
'i18n', 'helper', 'models', 'locator', 'worker0', 'apps0',
- function($scope, $ptb, $stb, i18n, helper, models, locator, worker0, apps0) {
+ function ($scope, $ptb, $stb, i18n, helper, models, locator, worker0, apps0) {
'use strict';
$scope.whatIsWorker = i18n.terminology.worker;
@@ -69,7 +69,7 @@ angular.module('dashboard')
function updateExecutorsTable() {
$scope.executorsTable.rows = $stb.$update($scope.executorsTable.rows,
- _.map($scope.worker.executors, function(executor) {
+ _.map($scope.worker.executors, function (executor) {
if ($scope.apps.hasOwnProperty(executor.appId)) {
var app = $scope.apps[executor.appId];
var executorPageUrl = locator.executor(app.appId, app.type, executor.executorId);
@@ -96,14 +96,14 @@ angular.module('dashboard')
updateOverviewTable($scope.worker);
updateExecutorsTable();
- worker0.$subscribe($scope, function(worker) {
+ worker0.$subscribe($scope, function (worker) {
updateWorkerDetails(worker);
- }, /*onerror=*/function() {
+ }, /*onerror=*/function () {
// manually reset status fields on an error response
var worker = angular.copy($scope.worker);
worker.state = 'terminated';
worker.isRunning = false;
- _.forEach(worker.executors, function(executor) {
+ _.forEach(worker.executors, function (executor) {
executor.status = 'terminated';
executor.isRunning = false;
});
@@ -116,13 +116,13 @@ angular.module('dashboard')
updateExecutorsTable();
}
- apps0.$subscribe($scope, function(apps) {
+ apps0.$subscribe($scope, function (apps) {
$scope.apps = apps;
updateExecutorsTable();
});
// Delegate JvmMetrics directive to manage metrics
- $scope.queryMetricsFnRef = function(all) {
+ $scope.queryMetricsFnRef = function (all) {
return all ?
models.$get.workerHistMetrics(worker0.workerId) :
models.$get.workerMetrics(worker0.workerId, $scope.metricsConfig.retainRecentDataIntervalMs);
http://git-wip-us.apache.org/repos/asf/incubator-gearpump/blob/c176e448/services/dashboard/views/cluster/workers/workers_listview.html
----------------------------------------------------------------------
diff --git a/services/dashboard/views/cluster/workers/workers_listview.html b/services/dashboard/views/cluster/workers/workers_listview.html
index 1f5295d..8b65005 100644
--- a/services/dashboard/views/cluster/workers/workers_listview.html
+++ b/services/dashboard/views/cluster/workers/workers_listview.html
@@ -31,6 +31,7 @@
<div class="table-no-data">
<h2 class="glyphicon glyphicon-bullhorn"></h2>
<h4>No worker instance is running</h4>
+
<p>Please contact your administrator to launch worker for applications.</p>
</div>
</sortable-table>
http://git-wip-us.apache.org/repos/asf/incubator-gearpump/blob/c176e448/services/dashboard/views/cluster/workers/workers_listview.js
----------------------------------------------------------------------
diff --git a/services/dashboard/views/cluster/workers/workers_listview.js b/services/dashboard/views/cluster/workers/workers_listview.js
index c277b38..184d578 100644
--- a/services/dashboard/views/cluster/workers/workers_listview.js
+++ b/services/dashboard/views/cluster/workers/workers_listview.js
@@ -6,7 +6,7 @@
angular.module('dashboard')
.config(['$stateProvider',
- function($stateProvider) {
+ function ($stateProvider) {
'use strict';
$stateProvider
@@ -16,10 +16,10 @@ angular.module('dashboard')
templateUrl: 'views/cluster/workers/workers_listview.html',
controller: 'WorkersListViewCtrl',
resolve: {
- workers0: ['models', function(models) {
+ workers0: ['models', function (models) {
return models.$get.workers();
}],
- supervisor0: ['models', function(models) {
+ supervisor0: ['models', function (models) {
return models.$get.supervisor();
}]
}
@@ -28,10 +28,10 @@ angular.module('dashboard')
.controller('WorkersListViewCtrl', ['$scope', '$modal', '$sortableTableBuilder', '$dialogs',
'restapi', 'workers0', 'supervisor0',
- function($scope, $modal, $stb, $dialogs, restapi, workers0, supervisor0) {
+ function ($scope, $modal, $stb, $dialogs, restapi, workers0, supervisor0) {
'use strict';
- $scope.isSupervisor = (supervisor0.path||'').length > 0;
+ $scope.isSupervisor = (supervisor0.path || '').length > 0;
$scope.workersTable = {
cols: [
// group 1/3 (4-col)
@@ -51,22 +51,30 @@ angular.module('dashboard')
function updateTable(workers) {
$scope.workersTable.rows = $stb.$update($scope.workersTable.rows,
- _.map(workers, function(worker) {
+ _.map(workers, function (worker) {
return {
id: {href: worker.pageUrl, text: worker.workerId},
- state: {tooltip: worker.state, condition: worker.isRunning ? 'good' : 'concern', shape: 'stripe'},
+ state: {
+ tooltip: worker.state,
+ condition: worker.isRunning ? 'good' : 'concern',
+ shape: 'stripe'
+ },
akkaAddr: worker.akkaAddr,
jvm: worker.jvmName,
aliveFor: worker.aliveFor,
- slots: {current: worker.slots.used, max: worker.slots.total, usage: worker.slots.usage},
+ slots: {
+ current: worker.slots.used,
+ max: worker.slots.total,
+ usage: worker.slots.usage
+ },
executors: worker.executors.length || 0,
detail: {href: worker.pageUrl, text: 'Details', class: 'btn-xs btn-primary'},
conf: {href: worker.configLink, target: '_blank', text: 'Config', class: 'btn-xs'},
kill: {
text: 'Kill', class: 'btn-xs',
disabled: !$scope.isSupervisor,
- click: function() {
- $dialogs.confirm('Are you sure to kill this worker?', function() {
+ click: function () {
+ $dialogs.confirm('Are you sure to kill this worker?', function () {
restapi.removeWorker(worker.workerId,
function handleResponse(response) {
if (response.success) {
@@ -87,7 +95,7 @@ angular.module('dashboard')
}
updateTable(workers0.$data());
- workers0.$subscribe($scope, function(data) {
+ workers0.$subscribe($scope, function (data) {
updateTable(data);
});
@@ -99,7 +107,7 @@ angular.module('dashboard')
show: false
});
- $scope.showAddWorkerDialog = function() {
+ $scope.showAddWorkerDialog = function () {
addWorkerDialog.$promise.then(addWorkerDialog.show);
};
}])
http://git-wip-us.apache.org/repos/asf/incubator-gearpump/blob/c176e448/services/dashboard/views/helper.js
----------------------------------------------------------------------
diff --git a/services/dashboard/views/helper.js b/services/dashboard/views/helper.js
index bb46a86..3a5ec8b 100644
--- a/services/dashboard/views/helper.js
+++ b/services/dashboard/views/helper.js
@@ -6,21 +6,21 @@
angular.module('dashboard')
/** Provides widgets/directive related helper functions */
- .factory('helper', ['$filter', '$echarts', function($filter, $echarts) {
+ .factory('helper', ['$filter', '$echarts', function ($filter, $echarts) {
'use strict';
return {
/* Allows dashing property `<button>` to have a "Copy to clipboard" feature on click. */
- withClickToCopy: function(values, text) {
+ withClickToCopy: function (values, text) {
return angular.extend(values, {
tooltip: 'Location: <b>' + text + '</b><div><small>click button to copy</small></div>',
- click: function() {
+ click: function () {
clipboard.copy(text);
}
});
},
/* Returns a readable duration component. */
- readableDuration: function(millis) {
+ readableDuration: function (millis) {
var pieces = $filter('duration')(millis).split(' ');
return {
value: Math.max(0, pieces[0]),
@@ -28,7 +28,7 @@ angular.module('dashboard')
};
},
/* Return a readable metric value. */
- readableMetricValue: function(value) {
+ readableMetricValue: function (value) {
if (angular.isNumber(value)) {
var precision = Math.abs(value) < 100 ? 2 : 0;
return $filter('number')(value, precision);
@@ -36,24 +36,24 @@ angular.module('dashboard')
return value;
},
/* Make metric precision consistent */
- metricRounded: function(value) {
+ metricRounded: function (value) {
return _.round(value, 2);
},
/* Create a proper chart time label for echart */
- timeToChartTimeLabel: function(time, shortForm) {
- return moment(time).format(shortForm ? 'HH:mm:ss': 'ddd DD, HH:mm');
+ timeToChartTimeLabel: function (time, shortForm) {
+ return moment(time).format(shortForm ? 'HH:mm:ss' : 'ddd DD, HH:mm');
},
/* Return a y-axis label formatter that will not show 0 on y-axis */
- yAxisLabelFormatterWithoutValue0: function(unit) {
+ yAxisLabelFormatterWithoutValue0: function (unit) {
return $echarts.axisLabelFormatter(unit, {0: ''});
}
};
}])
- .filter('metric', ['helper', function(helper) {
+ .filter('metric', ['helper', function (helper) {
'use strict';
- return function(value) {
+ return function (value) {
return helper.readableMetricValue(value);
};
}])
http://git-wip-us.apache.org/repos/asf/incubator-gearpump/blob/c176e448/services/dashboard/views/jvm/jvm_metrics_view.js
----------------------------------------------------------------------
diff --git a/services/dashboard/views/jvm/jvm_metrics_view.js b/services/dashboard/views/jvm/jvm_metrics_view.js
index 2fbd539..c9d6ff8 100644
--- a/services/dashboard/views/jvm/jvm_metrics_view.js
+++ b/services/dashboard/views/jvm/jvm_metrics_view.js
@@ -5,7 +5,7 @@
angular.module('dashboard')
- .directive('jvmMetricsView', function() {
+ .directive('jvmMetricsView', function () {
'use strict';
return {
@@ -16,7 +16,7 @@ angular.module('dashboard')
queryMetricsFnRef: '&'
},
controller: ['$scope', '$filter', '$propertyTableBuilder', 'helper',
- function($scope, $filter, $ptb, helper) {
+ function ($scope, $filter, $ptb, helper) {
'use strict';
var sc = $scope.samplingConfig;
@@ -25,10 +25,10 @@ angular.module('dashboard')
// property table part
var converter = {
- bytes: function(value) {
+ bytes: function (value) {
return {raw: value, unit: 'B', readable: true};
},
- direct: function(value) {
+ direct: function (value) {
return value;
}
};
@@ -40,7 +40,7 @@ angular.module('dashboard')
'thread.daemon.count': ['Daemon Thread Count', converter.direct]
};
- $scope.jvmMetricsTable = _.map(metricsClassProps, function(prop) {
+ $scope.jvmMetricsTable = _.map(metricsClassProps, function (prop) {
var text = prop[0];
var convertFn = prop[1];
return $ptb.number(text).value(convertFn(0)).done();
@@ -49,7 +49,7 @@ angular.module('dashboard')
function updateMetricsTable(metrics) {
var updates = {};
var i = 0;
- angular.forEach(metricsClassProps, function(prop, name) {
+ angular.forEach(metricsClassProps, function (prop, name) {
if (metrics.hasOwnProperty(name)) {
var convertFn = prop[1];
updates[i] = convertFn(metrics[name].value);
@@ -64,7 +64,7 @@ angular.module('dashboard')
function rebuildChartsOnPeriodChanged() {
var all = !$scope.isShowingCurrentMetrics;
- queryMetricsFn(all).then(function(metrics) {
+ queryMetricsFn(all).then(function (metrics) {
var dataPoints = makeMemoryUsageChartData(metrics);
var visibleDataPointsNum = all ?
Math.max(dataPoints.length, histChartPoints) : recentChartPoints;
@@ -79,20 +79,20 @@ angular.module('dashboard')
}
var queryMetricsFn = $scope.queryMetricsFnRef();
- queryMetricsFn(/*all=*/false).then(function(metrics0) {
+ queryMetricsFn(/*all=*/false).then(function (metrics0) {
$scope.metrics = metrics0.$data();
- $scope.$watch('isShowingCurrentMetrics', function(newVal, oldVal) {
+ $scope.$watch('isShowingCurrentMetrics', function (newVal, oldVal) {
if (angular.equals(newVal, oldVal)) {
return; // ignore initial notification
}
rebuildChartsOnPeriodChanged();
});
- metrics0.$subscribe($scope, function(metrics) {
+ metrics0.$subscribe($scope, function (metrics) {
$scope.metrics = metrics;
});
});
- $scope.$watch('metrics', function(metrics) {
+ $scope.$watch('metrics', function (metrics) {
if (angular.isObject(metrics)) {
updateMetricsTable(_.mapValues(metrics, _.last));
if ($scope.isShowingCurrentMetrics) {
@@ -106,7 +106,7 @@ angular.module('dashboard')
}
function makeMemoryUsageChartData(metrics) {
- return _.map(metrics['memory.total.used'], function(metric) {
+ return _.map(metrics['memory.total.used'], function (metric) {
return {
x: helper.timeToChartTimeLabel(metric.time, /*shortForm=*/$scope.isShowingCurrentMetrics),
y: [metric.value]
@@ -122,7 +122,7 @@ angular.module('dashboard')
visibleDataPointsNum: visibleDataPointsNum,
data: dataPoints,
yAxisLabelFormatter: helper.yAxisLabelFormatterWithoutValue0('B'), // MB, GB, TB, etc.
- valueFormatter: function(value) {
+ valueFormatter: function (value) {
return $filter('number')(Math.floor(value / (1024 * 1024)), 0) + ' MB';
}
};