AMBARI-17864. [Grafana] Add Storm Dashboards. (Prajwal Rao via yusaku)
Project: http://git-wip-us.apache.org/repos/asf/ambari/repo Commit: http://git-wip-us.apache.org/repos/asf/ambari/commit/de5d68a0 Tree: http://git-wip-us.apache.org/repos/asf/ambari/tree/de5d68a0 Diff: http://git-wip-us.apache.org/repos/asf/ambari/diff/de5d68a0 Branch: refs/heads/trunk Commit: de5d68a0f3784a5133f1a80bb6b773d554eccb89 Parents: 7757125 Author: Yusaku Sako <[email protected]> Authored: Thu Jul 28 15:44:37 2016 -0700 Committer: Yusaku Sako <[email protected]> Committed: Thu Jul 28 15:44:37 2016 -0700 ---------------------------------------------------------------------- .../ambari-metrics/datasource.js | 104 +++ .../HDF/grafana-storm-components.json | 579 ++++++++++++ .../HDF/grafana-storm-home.json | 501 +++++++++++ .../HDF/grafana-storm-topology.json | 894 +++++++++++++++++++ .../HDP/grafana-storm-components.json | 579 ++++++++++++ .../HDP/grafana-storm-home.json | 501 +++++++++++ .../HDP/grafana-storm-topology.json | 894 +++++++++++++++++++ 7 files changed, 4052 insertions(+) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/ambari/blob/de5d68a0/ambari-metrics/ambari-metrics-grafana/ambari-metrics/datasource.js ---------------------------------------------------------------------- diff --git a/ambari-metrics/ambari-metrics-grafana/ambari-metrics/datasource.js b/ambari-metrics/ambari-metrics-grafana/ambari-metrics/datasource.js index 8546e67..fa0cc47 100644 --- a/ambari-metrics/ambari-metrics-grafana/ambari-metrics/datasource.js +++ b/ambari-metrics/ambari-metrics-grafana/ambari-metrics/datasource.js @@ -128,6 +128,14 @@ define([ var alias = target.alias ? target.alias : target.metric; if(!_.isEmpty(templateSrv.variables) && templateSrv.variables[0].query === "hbase-users") { alias = alias + ' for ' + target.hbUser; } + // Aliases for Storm Topologies and components under a topology. + if(!_.isEmpty(templateSrv.variables) && templateSrv.variables[0].query === "topologies" && + !templateSrv.variables[1]) { + alias = alias + ' on ' + target.sTopology; + } + if(!_.isEmpty(templateSrv.variables[1]) && templateSrv.variables[1].name === "component") { + alias = alias + ' on ' + target.sTopology + ' for ' + target.sComponent; + } return function (res) { console.log('processing metric ' + target.metric); if (!res.metrics[0] || target.hide) { @@ -263,6 +271,19 @@ define([ ); }; + // Storm Topology calls. + var getStormData = function(target) { + var precision = target.precision === 'default' || typeof target.precision == 'undefined' ? '' : '&precision=' + + target.precision; + var metricAggregator = target.aggregator === "none" ? '' : '._' + target.aggregator; + var metricTransform = !target.transform || target.transform === "none" ? '' : '._' + target.transform; + var seriesAggregator = !target.seriesAggregator || target.seriesAggregator === "none" ? '' : '&seriesAggregateFunction=' + target.seriesAggregator; + return backendSrv.get(self.url + '/ws/v1/timeline/metrics?metricNames=' + target.sTopoMetric + metricTransform + + metricAggregator + '&appId=nimbus&startTime=' + from + '&endTime=' + to + precision + seriesAggregator).then( + allHostMetricsData(target) + ); + }; + // Time Ranges var from = Math.floor(options.range.from.valueOf() / 1000); var to = Math.floor(options.range.to.valueOf() / 1000); @@ -366,6 +387,37 @@ define([ }); } + //Templatized Dashboard for Storm Topologies + if (templateSrv.variables[0].query === "topologies" && !templateSrv.variables[1]) { + var allTopologies = templateSrv.variables.filter(function(variable) { return variable.query === "topologies";}); + var selectedTopologies = (_.isEmpty(allTopologies)) ? "" : allTopologies[0].options.filter(function(topo) + { return topo.selected; }).map(function(topoName) { return topoName.value; }); + selectedTopologies = templateSrv._values.topologies.lastIndexOf('}') > 0 ? templateSrv._values.topologies.slice(1,-1) : + templateSrv._values.topologies; + var selectedTopology= selectedTopologies.split(','); + _.forEach(selectedTopology, function(processTopology) { + metricsPromises.push(_.map(options.targets, function(target) { + target.sTopology = processTopology; + target.sTopoMetric = target.metric.replace('*', target.sTopology); + return getStormData(target); + })); + }); + } + + //Templatized Dashboards for Storm Components + if (templateSrv.variables[0].query === "topologies" && templateSrv.variables[1] && + templateSrv.variables[1].name === "component") { + var selectedTopology = templateSrv._values.topologies; + var selectedComponent = templateSrv._values.component; + metricsPromises.push(_.map(options.targets, function(target) { + target.sTopology = selectedTopology; + target.sComponent = selectedComponent; + target.sTopoMetric = target.metric.replace('*', target.sTopology).replace('*', target.sComponent); + debugger; + return getStormData(target); + })); + } + // To speed up querying on templatized dashboards. if (templateSrv.variables[1] && templateSrv.variables[1].name === "hosts") { var allHosts = templateSrv._values.hosts.lastIndexOf('}') > 0 ? templateSrv._values.hosts.slice(1,-1) : @@ -512,6 +564,58 @@ define([ }); }); } + var topologies = {}; + //Templated Variables for Storm Topologies + if(interpolated === "topologies") { + return this.initMetricAppidMapping() + .then(function () { + var storm = allMetrics["nimbus"]; + var extractTopologies = storm.filter(/./.test.bind(new + RegExp("^topology.", 'g'))); + _.map(extractTopologies, function(topology){ + // Topology naming convention is topology.<topology-name>.component. + topology = topology.split('.').slice(0,3); + if (topologies[topology[1]]){ + topologies[topology[1]].push(topology[2]); + } else { + topologies[topology[1]] = [topology[2]]; + } + }); + return _.map(Object.keys(topologies), function(topologyNames){ + return { + text: topologyNames + }; + }); + }); + } + //Templated Variables for Storm Components per Topology + if (interpolated.includes("stormComponent")) { + var componentName = interpolated.substring(0,interpolated.indexOf('.')); + return this.initMetricAppidMapping() + .then(function () { + var storm = allMetrics["nimbus"]; + var extractTopologies = storm.filter(/./.test.bind(new + RegExp("^topology.", 'g'))); + _.map(extractTopologies, function(topology){ + topology = topology.split('.').slice(0,3); + if (topologies[topology[1]]){ + topologies[topology[1]].push(topology[2]); + } else { + topologies[topology[1]] = [topology[2]]; + } + }); + // Retrieve unique component names from the list. + var compName = _.uniq(topologies[componentName]); + // Remove "kafka-topic" from the list of components. + var remove = compName.indexOf('kafka-topic'); + if (remove > -1) { compName.splice(remove, 1);} + return _.map(compName, function(components){ + return { + text: components + }; + }); + }); + } // Templated Variable for YARN Queues. // It will search the cluster and populate the queues. if(interpolated === "yarnqueues") { http://git-wip-us.apache.org/repos/asf/ambari/blob/de5d68a0/ambari-server/src/main/resources/common-services/AMBARI_METRICS/0.1.0/package/files/grafana-dashboards/HDF/grafana-storm-components.json ---------------------------------------------------------------------- diff --git a/ambari-server/src/main/resources/common-services/AMBARI_METRICS/0.1.0/package/files/grafana-dashboards/HDF/grafana-storm-components.json b/ambari-server/src/main/resources/common-services/AMBARI_METRICS/0.1.0/package/files/grafana-dashboards/HDF/grafana-storm-components.json new file mode 100644 index 0000000..9920320 --- /dev/null +++ b/ambari-server/src/main/resources/common-services/AMBARI_METRICS/0.1.0/package/files/grafana-dashboards/HDF/grafana-storm-components.json @@ -0,0 +1,579 @@ +{ + "id": null, + "title": "Storm - Components", + "originalTitle": "Storm - Components", + "tags": [ + "storm" + ], + "style": "dark", + "timezone": "browser", + "editable": true, + "hideControls": false, + "sharedCrosshair": false, + "rows": [ + { + "collapse": false, + "editable": true, + "height": "25px", + "panels": [ + { + "content": "<h4 align=\"center\">Metrics to see the status for the Storm topologies on a per component level. Click on each row title to expand on demand to look at various metrics. </h4>\n<h6 style=\"color:red;\" align=\"center\">This dashboard is managed by Ambari. You may lose any changes made to this dashboard. If you want to customize, make your own copy.</h6>\n<h5 align=\"center\">Note: Period ('.') contained topology names are not supported.</h5>", + "editable": true, + "error": false, + "id": 14, + "isNew": true, + "links": [], + "mode": "html", + "span": 12, + "style": {}, + "title": "", + "type": "text" + } + ], + "title": "New row" + }, + { + "collapse": false, + "editable": true, + "height": "250px", + "panels": [ + { + "aliasColors": {}, + "bars": false, + "datasource": null, + "editable": true, + "error": false, + "fill": 1, + "grid": { + "leftLogBase": 1, + "leftMax": null, + "leftMin": null, + "rightLogBase": 1, + "rightMax": null, + "rightMin": null, + "threshold1": null, + "threshold1Color": "rgba(216, 200, 27, 0.27)", + "threshold2": null, + "threshold2Color": "rgba(234, 112, 112, 0.22)" + }, + "id": 4, + "isNew": true, + "legend": { + "avg": false, + "current": false, + "hideEmpty": true, + "max": false, + "min": false, + "show": false, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 2, + "links": [], + "nullPointMode": "connected", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "span": 4, + "stack": false, + "steppedLine": false, + "targets": [ + { + "aggregator": "sum", + "alias": "Input Records", + "app": "nimbus", + "downsampleAggregator": "avg", + "errors": {}, + "hosts": "", + "metric": "topology.*.*.%.--execute-count.%", + "precision": "default", + "refId": "A", + "sComponent": "log", + "sTopoMetric": "topology.kafka-topology.log.%.--execute-count.%", + "sTopology": "kafka-topology", + "seriesAggregator": "sum", + "shouldAggregateSeries": true, + "transform": "none" + }, + { + "aggregator": "sum", + "alias": "Output Records", + "app": "nimbus", + "downsampleAggregator": "avg", + "errors": {}, + "hosts": "", + "metric": "topology.*.*.%.--emit-count.%", + "precision": "default", + "refId": "B", + "sComponent": "log", + "sTopoMetric": "topology.kafka-topology.log.%.--emit-count.%", + "sTopology": "kafka-topology", + "seriesAggregator": "sum", + "shouldAggregateSeries": true, + "transform": "none" + } + ], + "timeFrom": null, + "timeShift": null, + "title": "Input / Output", + "tooltip": { + "shared": false, + "value_type": "cumulative" + }, + "type": "graph", + "x-axis": true, + "y-axis": true, + "y_formats": [ + "short", + "short" + ] + }, + { + "aliasColors": {}, + "bars": false, + "datasource": null, + "editable": true, + "error": false, + "fill": 1, + "grid": { + "leftLogBase": 1, + "leftMax": null, + "leftMin": null, + "rightLogBase": 1, + "rightMax": null, + "rightMin": null, + "threshold1": null, + "threshold1Color": "rgba(216, 200, 27, 0.27)", + "threshold2": null, + "threshold2Color": "rgba(234, 112, 112, 0.22)" + }, + "id": 3, + "isNew": true, + "legend": { + "avg": false, + "current": false, + "hideEmpty": true, + "max": false, + "min": false, + "show": false, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 2, + "links": [], + "nullPointMode": "connected", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "span": 4, + "stack": false, + "steppedLine": false, + "targets": [ + { + "aggregator": "sum", + "alias": "Acked Tuples", + "app": "nimbus", + "downsampleAggregator": "avg", + "errors": {}, + "hosts": "", + "metric": "topology.*.*.%.--ack-count.%", + "precision": "default", + "refId": "A", + "sComponent": "log", + "sTopoMetric": "topology.kafka-topology.log.%.--ack-count.%", + "sTopology": "kafka-topology", + "seriesAggregator": "sum", + "shouldAggregateSeries": true, + "transform": "none" + } + ], + "timeFrom": null, + "timeShift": null, + "title": "Acked Tuples", + "tooltip": { + "shared": false, + "value_type": "cumulative" + }, + "type": "graph", + "x-axis": true, + "y-axis": true, + "y_formats": [ + "short", + "short" + ] + }, + { + "aliasColors": {}, + "bars": false, + "datasource": null, + "editable": true, + "error": false, + "fill": 1, + "grid": { + "leftLogBase": 1, + "leftMax": null, + "leftMin": null, + "rightLogBase": 1, + "rightMax": null, + "rightMin": null, + "threshold1": null, + "threshold1Color": "rgba(216, 200, 27, 0.27)", + "threshold2": null, + "threshold2Color": "rgba(234, 112, 112, 0.22)" + }, + "id": 15, + "isNew": true, + "legend": { + "avg": false, + "current": false, + "hideEmpty": true, + "max": false, + "min": false, + "show": false, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 2, + "links": [], + "nullPointMode": "connected", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "span": 4, + "stack": false, + "steppedLine": false, + "targets": [ + { + "aggregator": "avg", + "alias": "Failed Tuples", + "app": "nimbus", + "downsampleAggregator": "avg", + "errors": {}, + "hosts": "", + "metric": "topology.*.*.%.--fail-count.%", + "precision": "default", + "refId": "A", + "sComponent": "log", + "sTopoMetric": "topology.kafka-topology.log.%.--fail-count.%", + "sTopology": "kafka-topology", + "seriesAggregator": "sum", + "shouldAggregateSeries": true, + "transform": "none" + } + ], + "timeFrom": null, + "timeShift": null, + "title": "Failed Tuples", + "tooltip": { + "shared": false, + "value_type": "cumulative" + }, + "type": "graph", + "x-axis": true, + "y-axis": true, + "y_formats": [ + "short", + "short" + ] + } + ], + "showTitle": true, + "title": "Records" + }, + { + "collapse": true, + "editable": true, + "height": "250px", + "panels": [ + { + "aliasColors": {}, + "bars": false, + "datasource": null, + "editable": true, + "error": false, + "fill": 1, + "grid": { + "leftLogBase": 1, + "leftMax": null, + "leftMin": null, + "rightLogBase": 1, + "rightMax": null, + "rightMin": null, + "threshold1": null, + "threshold1Color": "rgba(216, 200, 27, 0.27)", + "threshold2": null, + "threshold2Color": "rgba(234, 112, 112, 0.22)" + }, + "id": 12, + "isNew": true, + "legend": { + "avg": false, + "current": false, + "hideEmpty": true, + "max": false, + "min": false, + "show": false, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 2, + "links": [], + "nullPointMode": "connected", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "span": 6, + "stack": false, + "steppedLine": false, + "targets": [ + { + "aggregator": "avg", + "alias": "Complete Latency", + "app": "nimbus", + "downsampleAggregator": "avg", + "errors": {}, + "hosts": "", + "metric": "topology.*.*.%.--complete-latency.%", + "precision": "default", + "refId": "B", + "sComponent": "log", + "sTopoMetric": "topology.kafka-topology.log.%.--complete-latency.%", + "sTopology": "kafka-topology", + "seriesAggregator": "avg", + "shouldAggregateSeries": true, + "transform": "none" + }, + { + "aggregator": "avg", + "alias": "Process Latency", + "app": "nimbus", + "downsampleAggregator": "avg", + "errors": {}, + "hosts": "", + "metric": "topology.*.*.%.--process-latency.%", + "precision": "default", + "refId": "A", + "sComponent": "log", + "sTopoMetric": "topology.kafka-topology.log.%.--process-latency.%", + "sTopology": "kafka-topology", + "seriesAggregator": "avg", + "shouldAggregateSeries": true, + "transform": "none" + } + ], + "timeFrom": null, + "timeShift": null, + "title": "Latency", + "tooltip": { + "shared": false, + "value_type": "cumulative" + }, + "type": "graph", + "x-axis": true, + "y-axis": true, + "y_formats": [ + "ms", + "short" + ] + }, + { + "aliasColors": {}, + "bars": false, + "datasource": null, + "editable": true, + "error": false, + "fill": 1, + "grid": { + "leftLogBase": 1, + "leftMax": null, + "leftMin": null, + "rightLogBase": 1, + "rightMax": null, + "rightMin": null, + "threshold1": null, + "threshold1Color": "rgba(216, 200, 27, 0.27)", + "threshold2": null, + "threshold2Color": "rgba(234, 112, 112, 0.22)" + }, + "id": 2, + "isNew": true, + "legend": { + "avg": false, + "current": false, + "hideEmpty": true, + "max": false, + "min": false, + "show": false, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 2, + "links": [], + "nullPointMode": "connected", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "span": 6, + "stack": false, + "steppedLine": false, + "targets": [ + { + "aggregator": "sum", + "alias": "Receive Queue Population", + "app": "nimbus", + "downsampleAggregator": "avg", + "errors": {}, + "hosts": "", + "metric": "topology.*.*.%.--receive.population", + "precision": "default", + "refId": "A", + "sComponent": "log", + "sTopoMetric": "topology.kafka-topology.log.%.--receive.population", + "sTopology": "kafka-topology", + "seriesAggregator": "sum", + "shouldAggregateSeries": true, + "transform": "none" + }, + { + "aggregator": "sum", + "alias": "Send Queue Population", + "app": "nimbus", + "downsampleAggregator": "avg", + "errors": {}, + "hosts": "", + "metric": "topology.*.*.%.--sendqueue.population", + "precision": "default", + "refId": "B", + "sComponent": "log", + "sTopoMetric": "topology.kafka-topology.log.%.--sendqueue.population", + "sTopology": "kafka-topology", + "seriesAggregator": "sum", + "shouldAggregateSeries": true, + "transform": "none" + } + ], + "timeFrom": null, + "timeShift": null, + "title": "Queue", + "tooltip": { + "shared": false, + "value_type": "cumulative" + }, + "type": "graph", + "x-axis": true, + "y-axis": true, + "y_formats": [ + "short", + "short" + ] + } + ], + "showTitle": true, + "title": "Latency / Queue" + } + ], + "time": { + "from": "now-6h", + "to": "now" + }, + "timepicker": { + "now": true, + "refresh_intervals": [ + "5s", + "10s", + "30s", + "1m", + "5m", + "15m", + "30m", + "1h", + "2h", + "1d" + ], + "time_options": [ + "5m", + "15m", + "1h", + "6h", + "12h", + "24h", + "2d", + "7d", + "30d" + ] + }, + "templating": { + "list": [ + { + "allFormat": "glob", + "current": { + "text": "kafka-topology", + "value": "kafka-topology" + }, + "datasource": null, + "includeAll": false, + "multi": false, + "multiFormat": "glob", + "name": "topologies", + "options": [ + + ], + "query": "topologies", + "refresh": true, + "regex": "", + "type": "query" + }, + { + "allFormat": "glob", + "current": { + "text": "", + "value": "" + }, + "datasource": null, + "includeAll": false, + "multi": false, + "multiFormat": "glob", + "name": "component", + "options": [ + + ], + "query": "$topologies.stormComponent", + "refresh": true, + "regex": "", + "type": "query" + } + ] + }, + "annotations": { + "list": [] + }, + "refresh": false, + "schemaVersion": 8, + "version": 10, + "links": [ + { + "asDropdown": true, + "icon": "external link", + "tags": [ + "storm" + ], + "title": "Storm Dashboards", + "type": "dashboards" + } + ] +} \ No newline at end of file http://git-wip-us.apache.org/repos/asf/ambari/blob/de5d68a0/ambari-server/src/main/resources/common-services/AMBARI_METRICS/0.1.0/package/files/grafana-dashboards/HDF/grafana-storm-home.json ---------------------------------------------------------------------- diff --git a/ambari-server/src/main/resources/common-services/AMBARI_METRICS/0.1.0/package/files/grafana-dashboards/HDF/grafana-storm-home.json b/ambari-server/src/main/resources/common-services/AMBARI_METRICS/0.1.0/package/files/grafana-dashboards/HDF/grafana-storm-home.json new file mode 100644 index 0000000..93660a9 --- /dev/null +++ b/ambari-server/src/main/resources/common-services/AMBARI_METRICS/0.1.0/package/files/grafana-dashboards/HDF/grafana-storm-home.json @@ -0,0 +1,501 @@ +{ + "id": null, + "title": "Storm - Home", + "originalTitle": "Storm - Home", + "tags": [ + "storm" + ], + "style": "dark", + "timezone": "browser", + "editable": true, + "hideControls": false, + "sharedCrosshair": false, + "rows": [ + { + "collapse": false, + "editable": true, + "height": "25px", + "panels": [ + { + "content": "<h4 align=\"center\">Metrics to see the overall status for the Storm topology. Click on each row title to expand on demand to look at various metrics. </h4>\n<h6 style=\"color:red;\" align=\"center\">This dashboard is managed by Ambari. You may lose any changes made to this dashboard. If you want to customize, make your own copy.</h6>\n<h5 align=\"center\">Note: Period ('.') contained topology names are not supported.</h5>", + "editable": true, + "error": false, + "id": 1, + "isNew": true, + "links": [], + "mode": "html", + "span": 12, + "style": {}, + "title": "", + "type": "text" + } + ], + "title": "Row" + }, + { + "collapse": false, + "editable": true, + "height": "150px", + "panels": [ + { + "cacheTimeout": null, + "colorBackground": false, + "colorValue": false, + "colors": [ + "rgba(245, 54, 54, 0.9)", + "rgba(237, 129, 40, 0.89)", + "rgba(50, 172, 45, 0.97)" + ], + "datasource": null, + "editable": true, + "error": false, + "format": "none", + "id": 2, + "interval": null, + "isNew": true, + "links": [], + "maxDataPoints": 100, + "nullPointMode": "connected", + "nullText": null, + "postfix": "", + "postfixFontSize": "50%", + "prefix": "", + "prefixFontSize": "50%", + "span": 3, + "sparkline": { + "fillColor": "rgba(31, 118, 189, 0.18)", + "full": false, + "lineColor": "rgb(31, 120, 193)", + "show": true + }, + "targets": [ + { + "aggregator": "avg", + "app": "nimbus", + "downsampleAggregator": "avg", + "errors": {}, + "metric": "Topologies", + "precision": "default", + "refId": "A", + "seriesAggregator": "none", + "transform": "none" + } + ], + "thresholds": "", + "title": "Topologies", + "type": "singlestat", + "valueFontSize": "80%", + "valueMaps": [ + { + "op": "=", + "text": "N/A", + "value": "null" + } + ], + "valueName": "avg" + }, + { + "cacheTimeout": null, + "colorBackground": false, + "colorValue": false, + "colors": [ + "rgba(245, 54, 54, 0.9)", + "rgba(237, 129, 40, 0.89)", + "rgba(50, 172, 45, 0.97)" + ], + "datasource": null, + "editable": true, + "error": false, + "format": "none", + "id": 3, + "interval": null, + "isNew": true, + "links": [], + "maxDataPoints": 100, + "nullPointMode": "connected", + "nullText": null, + "postfix": "", + "postfixFontSize": "50%", + "prefix": "", + "prefixFontSize": "50%", + "span": 3, + "sparkline": { + "fillColor": "rgba(31, 118, 189, 0.18)", + "full": false, + "lineColor": "rgb(31, 120, 193)", + "show": true + }, + "targets": [ + { + "aggregator": "avg", + "app": "nimbus", + "downsampleAggregator": "avg", + "errors": {}, + "metric": "Supervisors", + "precision": "default", + "refId": "A", + "seriesAggregator": "none", + "transform": "none" + } + ], + "thresholds": "", + "title": "Supervisors", + "type": "singlestat", + "valueFontSize": "80%", + "valueMaps": [ + { + "op": "=", + "text": "N/A", + "value": "null" + } + ], + "valueName": "avg" + }, + { + "cacheTimeout": null, + "colorBackground": false, + "colorValue": false, + "colors": [ + "rgba(245, 54, 54, 0.9)", + "rgba(237, 129, 40, 0.89)", + "rgba(50, 172, 45, 0.97)" + ], + "datasource": null, + "editable": true, + "error": false, + "format": "none", + "id": 7, + "interval": null, + "isNew": true, + "links": [], + "maxDataPoints": 100, + "nullPointMode": "connected", + "nullText": null, + "postfix": "", + "postfixFontSize": "50%", + "prefix": "", + "prefixFontSize": "50%", + "span": 3, + "sparkline": { + "fillColor": "rgba(31, 118, 189, 0.18)", + "full": false, + "lineColor": "rgb(31, 120, 193)", + "show": true + }, + "targets": [ + { + "aggregator": "avg", + "app": "nimbus", + "downsampleAggregator": "avg", + "errors": {}, + "metric": "Total Executors", + "precision": "default", + "refId": "A", + "seriesAggregator": "none", + "transform": "none" + } + ], + "thresholds": "", + "title": "Total Executors", + "type": "singlestat", + "valueFontSize": "80%", + "valueMaps": [ + { + "op": "=", + "text": "N/A", + "value": "null" + } + ], + "valueName": "avg" + }, + { + "cacheTimeout": null, + "colorBackground": false, + "colorValue": false, + "colors": [ + "rgba(245, 54, 54, 0.9)", + "rgba(237, 129, 40, 0.89)", + "rgba(50, 172, 45, 0.97)" + ], + "datasource": null, + "editable": true, + "error": false, + "format": "none", + "id": 8, + "interval": null, + "isNew": true, + "links": [], + "maxDataPoints": 100, + "nullPointMode": "connected", + "nullText": null, + "postfix": "", + "postfixFontSize": "50%", + "prefix": "", + "prefixFontSize": "50%", + "span": 3, + "sparkline": { + "fillColor": "rgba(31, 118, 189, 0.18)", + "full": false, + "lineColor": "rgb(31, 120, 193)", + "show": true + }, + "targets": [ + { + "aggregator": "avg", + "app": "nimbus", + "downsampleAggregator": "avg", + "errors": {}, + "metric": "Total Tasks", + "precision": "default", + "refId": "A", + "seriesAggregator": "none", + "transform": "none" + } + ], + "thresholds": "", + "title": "Total Tasks", + "type": "singlestat", + "valueFontSize": "80%", + "valueMaps": [ + { + "op": "=", + "text": "N/A", + "value": "null" + } + ], + "valueName": "avg" + } + ], + "title": "New row" + }, + { + "collapse": false, + "editable": true, + "height": "150px", + "panels": [ + { + "cacheTimeout": null, + "colorBackground": false, + "colorValue": false, + "colors": [ + "rgba(245, 54, 54, 0.9)", + "rgba(237, 129, 40, 0.89)", + "rgba(50, 172, 45, 0.97)" + ], + "datasource": null, + "editable": true, + "error": false, + "format": "none", + "id": 4, + "interval": null, + "isNew": true, + "links": [], + "maxDataPoints": 100, + "nullPointMode": "connected", + "nullText": null, + "postfix": "", + "postfixFontSize": "50%", + "prefix": "", + "prefixFontSize": "50%", + "span": 4, + "sparkline": { + "fillColor": "rgba(31, 118, 189, 0.18)", + "full": false, + "lineColor": "rgb(31, 120, 193)", + "show": true + }, + "targets": [ + { + "aggregator": "avg", + "app": "nimbus", + "downsampleAggregator": "avg", + "errors": {}, + "metric": "Free Slots", + "precision": "default", + "refId": "A", + "seriesAggregator": "none", + "transform": "none" + } + ], + "thresholds": "", + "title": "Free Slots", + "type": "singlestat", + "valueFontSize": "80%", + "valueMaps": [ + { + "op": "=", + "text": "N/A", + "value": "null" + } + ], + "valueName": "avg" + }, + { + "cacheTimeout": null, + "colorBackground": false, + "colorValue": false, + "colors": [ + "rgba(245, 54, 54, 0.9)", + "rgba(237, 129, 40, 0.89)", + "rgba(50, 172, 45, 0.97)" + ], + "datasource": null, + "editable": true, + "error": false, + "format": "none", + "id": 5, + "interval": null, + "isNew": true, + "links": [], + "maxDataPoints": 100, + "nullPointMode": "connected", + "nullText": null, + "postfix": "", + "postfixFontSize": "50%", + "prefix": "", + "prefixFontSize": "50%", + "span": 4, + "sparkline": { + "fillColor": "rgba(31, 118, 189, 0.18)", + "full": false, + "lineColor": "rgb(31, 120, 193)", + "show": true + }, + "targets": [ + { + "aggregator": "avg", + "app": "nimbus", + "downsampleAggregator": "avg", + "errors": {}, + "metric": "Used Slots", + "precision": "default", + "refId": "A", + "seriesAggregator": "none", + "transform": "none" + } + ], + "thresholds": "", + "title": "Used Slots", + "type": "singlestat", + "valueFontSize": "80%", + "valueMaps": [ + { + "op": "=", + "text": "N/A", + "value": "null" + } + ], + "valueName": "avg" + }, + { + "cacheTimeout": null, + "colorBackground": false, + "colorValue": false, + "colors": [ + "rgba(245, 54, 54, 0.9)", + "rgba(237, 129, 40, 0.89)", + "rgba(50, 172, 45, 0.97)" + ], + "datasource": null, + "editable": true, + "error": false, + "format": "none", + "id": 6, + "interval": null, + "isNew": true, + "links": [], + "maxDataPoints": 100, + "nullPointMode": "connected", + "nullText": null, + "postfix": "", + "postfixFontSize": "50%", + "prefix": "", + "prefixFontSize": "50%", + "span": 4, + "sparkline": { + "fillColor": "rgba(31, 118, 189, 0.18)", + "full": false, + "lineColor": "rgb(31, 120, 193)", + "show": true + }, + "targets": [ + { + "aggregator": "avg", + "app": "nimbus", + "downsampleAggregator": "avg", + "errors": {}, + "metric": "Total Slots", + "precision": "default", + "refId": "A", + "seriesAggregator": "none", + "transform": "none" + } + ], + "thresholds": "", + "title": "Total Slots", + "type": "singlestat", + "valueFontSize": "80%", + "valueMaps": [ + { + "op": "=", + "text": "N/A", + "value": "null" + } + ], + "valueName": "avg" + } + ], + "title": "New row" + } + ], + "time": { + "from": "now-6h", + "to": "now" + }, + "timepicker": { + "now": true, + "refresh_intervals": [ + "5s", + "10s", + "30s", + "1m", + "5m", + "15m", + "30m", + "1h", + "2h", + "1d" + ], + "time_options": [ + "5m", + "15m", + "1h", + "6h", + "12h", + "24h", + "2d", + "7d", + "30d" + ] + }, + "templating": { + "list": [] + }, + "annotations": { + "list": [] + }, + "schemaVersion": 8, + "version": 11, + "links": [ + { + "asDropdown": true, + "icon": "external link", + "keepTime": true, + "tags": [ + "storm" + ], + "title": "Storm Dashboards", + "type": "dashboards" + } + ] +} \ No newline at end of file http://git-wip-us.apache.org/repos/asf/ambari/blob/de5d68a0/ambari-server/src/main/resources/common-services/AMBARI_METRICS/0.1.0/package/files/grafana-dashboards/HDF/grafana-storm-topology.json ---------------------------------------------------------------------- diff --git a/ambari-server/src/main/resources/common-services/AMBARI_METRICS/0.1.0/package/files/grafana-dashboards/HDF/grafana-storm-topology.json b/ambari-server/src/main/resources/common-services/AMBARI_METRICS/0.1.0/package/files/grafana-dashboards/HDF/grafana-storm-topology.json new file mode 100644 index 0000000..63d7fe6 --- /dev/null +++ b/ambari-server/src/main/resources/common-services/AMBARI_METRICS/0.1.0/package/files/grafana-dashboards/HDF/grafana-storm-topology.json @@ -0,0 +1,894 @@ +{ + "id": null, + "title": "Storm - Topology", + "originalTitle": "Storm - Topology", + "tags": [ + "storm" + ], + "style": "dark", + "timezone": "browser", + "editable": true, + "hideControls": false, + "sharedCrosshair": false, + "rows": [ + { + "collapse": false, + "editable": true, + "height": "25px", + "panels": [ + { + "content": "<h4 align=\"center\">Metrics to see the overall status for the Storm topology. Click on each row title to expand on demand to look at various metrics. </h4>\n<h6 style=\"color:red;\" align=\"center\">This dashboard is managed by Ambari. You may lose any changes made to this dashboard. If you want to customize, make your own copy.</h6>\n<h5 align=\"center\">Note: Period ('.') contained topology names are not supported.</h5>", + "editable": true, + "error": false, + "id": 14, + "isNew": true, + "links": [], + "mode": "html", + "span": 12, + "style": {}, + "title": "", + "type": "text" + } + ], + "title": "New row" + }, + { + "collapse": false, + "editable": true, + "height": "250px", + "panels": [ + { + "aliasColors": {}, + "bars": false, + "datasource": null, + "editable": true, + "error": false, + "fill": 1, + "grid": { + "leftLogBase": 1, + "leftMax": null, + "leftMin": null, + "rightLogBase": 1, + "rightMax": null, + "rightMin": null, + "threshold1": null, + "threshold1Color": "rgba(216, 200, 27, 0.27)", + "threshold2": null, + "threshold2Color": "rgba(234, 112, 112, 0.22)" + }, + "id": 4, + "isNew": true, + "legend": { + "avg": false, + "current": false, + "hideEmpty": true, + "max": false, + "min": false, + "show": false, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 2, + "links": [], + "nullPointMode": "connected", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "span": 4, + "stack": false, + "steppedLine": false, + "targets": [ + { + "aggregator": "sum", + "alias": "Input Records", + "app": "nimbus", + "downsampleAggregator": "avg", + "errors": {}, + "hosts": "", + "metric": "topology.*.%.--execute-count.%", + "precision": "default", + "refId": "A", + "sTopoMetric": "topology.rolling-top-words-v2.%.--execute-count.%", + "sTopology": "rolling-top-words-v2", + "seriesAggregator": "sum", + "shouldAggregateSeries": true, + "transform": "none" + }, + { + "aggregator": "sum", + "alias": "Output Records", + "app": "nimbus", + "downsampleAggregator": "avg", + "errors": {}, + "hosts": "", + "metric": "topology.*.%.--emit-count.%", + "precision": "default", + "refId": "B", + "sTopoMetric": "topology.rolling-top-words-v2.%.--emit-count.%", + "sTopology": "rolling-top-words-v2", + "seriesAggregator": "sum", + "shouldAggregateSeries": true, + "transform": "none" + } + ], + "timeFrom": null, + "timeShift": null, + "title": "All Tasks Input / Output", + "tooltip": { + "shared": false, + "value_type": "cumulative" + }, + "type": "graph", + "x-axis": true, + "y-axis": true, + "y_formats": [ + "short", + "short" + ] + }, + { + "aliasColors": {}, + "bars": false, + "datasource": null, + "editable": true, + "error": false, + "fill": 1, + "grid": { + "leftLogBase": 1, + "leftMax": null, + "leftMin": null, + "rightLogBase": 1, + "rightMax": null, + "rightMin": null, + "threshold1": null, + "threshold1Color": "rgba(216, 200, 27, 0.27)", + "threshold2": null, + "threshold2Color": "rgba(234, 112, 112, 0.22)" + }, + "id": 3, + "isNew": true, + "legend": { + "avg": false, + "current": false, + "hideEmpty": true, + "max": false, + "min": false, + "show": false, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 2, + "links": [], + "nullPointMode": "connected", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "span": 4, + "stack": false, + "steppedLine": false, + "targets": [ + { + "aggregator": "sum", + "alias": "Acked Tuples", + "app": "nimbus", + "downsampleAggregator": "avg", + "errors": {}, + "hosts": "", + "metric": "topology.*.%.--ack-count.%", + "precision": "default", + "refId": "A", + "sTopoMetric": "topology.rolling-top-words-v2.%.--ack-count.%", + "sTopology": "rolling-top-words-v2", + "seriesAggregator": "sum", + "shouldAggregateSeries": true, + "transform": "none" + } + ], + "timeFrom": null, + "timeShift": null, + "title": "All Tasks Acked Tuples", + "tooltip": { + "shared": false, + "value_type": "cumulative" + }, + "type": "graph", + "x-axis": true, + "y-axis": true, + "y_formats": [ + "short", + "short" + ] + }, + { + "aliasColors": {}, + "bars": false, + "datasource": null, + "editable": true, + "error": false, + "fill": 1, + "grid": { + "leftLogBase": 1, + "leftMax": null, + "leftMin": null, + "rightLogBase": 1, + "rightMax": null, + "rightMin": null, + "threshold1": null, + "threshold1Color": "rgba(216, 200, 27, 0.27)", + "threshold2": null, + "threshold2Color": "rgba(234, 112, 112, 0.22)" + }, + "id": 15, + "isNew": true, + "legend": { + "avg": false, + "current": false, + "hideEmpty": true, + "max": false, + "min": false, + "show": false, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 2, + "links": [], + "nullPointMode": "connected", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "span": 4, + "stack": false, + "steppedLine": false, + "targets": [ + { + "aggregator": "avg", + "alias": "Failed Tuples", + "app": "nimbus", + "downsampleAggregator": "avg", + "errors": {}, + "hosts": "", + "metric": "topology.*.%.--fail-count.%", + "precision": "default", + "refId": "A", + "sTopoMetric": "topology.rolling-top-words-v2.%.--fail-count.%", + "sTopology": "rolling-top-words-v2", + "seriesAggregator": "sum", + "shouldAggregateSeries": true, + "transform": "none" + } + ], + "timeFrom": null, + "timeShift": null, + "title": "All Tasks Failed Tuples", + "tooltip": { + "shared": false, + "value_type": "cumulative" + }, + "type": "graph", + "x-axis": true, + "y-axis": true, + "y_formats": [ + "short", + "short" + ] + } + ], + "showTitle": true, + "title": "Records" + }, + { + "collapse": true, + "editable": true, + "height": "250px", + "panels": [ + { + "aliasColors": {}, + "bars": false, + "datasource": null, + "editable": true, + "error": false, + "fill": 1, + "grid": { + "leftLogBase": 1, + "leftMax": null, + "leftMin": null, + "rightLogBase": 1, + "rightMax": null, + "rightMin": null, + "threshold1": null, + "threshold1Color": "rgba(216, 200, 27, 0.27)", + "threshold2": null, + "threshold2Color": "rgba(234, 112, 112, 0.22)" + }, + "id": 12, + "isNew": true, + "legend": { + "avg": false, + "current": false, + "hideEmpty": true, + "max": false, + "min": false, + "show": false, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 2, + "links": [], + "nullPointMode": "connected", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "span": 6, + "stack": false, + "steppedLine": false, + "targets": [ + { + "aggregator": "avg", + "alias": "Average of Complete Latency", + "app": "nimbus", + "downsampleAggregator": "avg", + "errors": {}, + "hosts": "", + "metric": "topology.*.%.--complete-latency.%", + "precision": "default", + "refId": "B", + "sTopoMetric": "topology.rolling-top-words-v2.%.--complete-latency.%", + "sTopology": "rolling-top-words-v2", + "seriesAggregator": "avg", + "shouldAggregateSeries": true, + "transform": "none" + } + ], + "timeFrom": null, + "timeShift": null, + "title": "All Spouts Latency", + "tooltip": { + "shared": false, + "value_type": "cumulative" + }, + "type": "graph", + "x-axis": true, + "y-axis": true, + "y_formats": [ + "ms", + "short" + ] + }, + { + "aliasColors": {}, + "bars": false, + "datasource": null, + "editable": true, + "error": false, + "fill": 1, + "grid": { + "leftLogBase": 1, + "leftMax": null, + "leftMin": null, + "rightLogBase": 1, + "rightMax": null, + "rightMin": null, + "threshold1": null, + "threshold1Color": "rgba(216, 200, 27, 0.27)", + "threshold2": null, + "threshold2Color": "rgba(234, 112, 112, 0.22)" + }, + "id": 2, + "isNew": true, + "legend": { + "avg": false, + "current": false, + "hideEmpty": true, + "max": false, + "min": false, + "show": false, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 2, + "links": [], + "nullPointMode": "connected", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "span": 6, + "stack": false, + "steppedLine": false, + "targets": [ + { + "aggregator": "sum", + "alias": "Receive Queue Population", + "app": "nimbus", + "downsampleAggregator": "avg", + "errors": {}, + "hosts": "", + "metric": "topology.*.%.--receive.population", + "precision": "default", + "refId": "A", + "sTopoMetric": "topology.rolling-top-words-v2.%.--receive.population", + "sTopology": "rolling-top-words-v2", + "seriesAggregator": "sum", + "shouldAggregateSeries": true, + "transform": "none" + }, + { + "aggregator": "sum", + "alias": "Send Queue Population", + "app": "nimbus", + "downsampleAggregator": "avg", + "errors": {}, + "hosts": "", + "metric": "topology.*.%.--sendqueue.population", + "precision": "default", + "refId": "B", + "sTopoMetric": "topology.rolling-top-words-v2.%.--sendqueue.population", + "sTopology": "rolling-top-words-v2", + "seriesAggregator": "sum", + "shouldAggregateSeries": true, + "transform": "none" + } + ], + "timeFrom": null, + "timeShift": null, + "title": "All Tasks Queue", + "tooltip": { + "shared": false, + "value_type": "cumulative" + }, + "type": "graph", + "x-axis": true, + "y-axis": true, + "y_formats": [ + "short", + "short" + ] + } + ], + "showTitle": true, + "title": "Latency / Queue" + }, + { + "collapse": true, + "editable": true, + "height": "250px", + "panels": [ + { + "aliasColors": {}, + "bars": false, + "datasource": null, + "editable": true, + "error": false, + "fill": 1, + "grid": { + "leftLogBase": 1, + "leftMax": null, + "leftMin": null, + "rightLogBase": 1, + "rightMax": null, + "rightMin": null, + "threshold1": null, + "threshold1Color": "rgba(216, 200, 27, 0.27)", + "threshold2": null, + "threshold2Color": "rgba(234, 112, 112, 0.22)" + }, + "id": 7, + "isNew": true, + "legend": { + "avg": false, + "current": false, + "hideEmpty": true, + "max": false, + "min": false, + "show": false, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 2, + "links": [], + "nullPointMode": "connected", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "span": 6, + "stack": false, + "steppedLine": false, + "targets": [ + { + "aggregator": "avg", + "alias": "Heap Used Bytes", + "app": "nimbus", + "downsampleAggregator": "avg", + "errors": {}, + "hosts": "", + "metric": "topology.*.--system.%.%.-1.memory/heap.usedBytes", + "precision": "default", + "refId": "A", + "sTopoMetric": "topology.rolling-top-words-v2.--system.%.%.-1.memory/heap.usedBytes", + "sTopology": "rolling-top-words-v2", + "seriesAggregator": "sum", + "shouldAggregateSeries": false, + "transform": "none" + } + ], + "timeFrom": null, + "timeShift": null, + "title": "All workers memory usage on heap", + "tooltip": { + "shared": false, + "value_type": "cumulative" + }, + "type": "graph", + "x-axis": true, + "y-axis": true, + "y_formats": [ + "bytes", + "short" + ] + }, + { + "aliasColors": {}, + "bars": false, + "datasource": null, + "editable": true, + "error": false, + "fill": 1, + "grid": { + "leftLogBase": 1, + "leftMax": null, + "leftMin": null, + "rightLogBase": 1, + "rightMax": null, + "rightMin": null, + "threshold1": null, + "threshold1Color": "rgba(216, 200, 27, 0.27)", + "threshold2": null, + "threshold2Color": "rgba(234, 112, 112, 0.22)" + }, + "id": 8, + "isNew": true, + "legend": { + "avg": false, + "current": false, + "hideEmpty": true, + "max": false, + "min": false, + "show": false, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 2, + "links": [], + "nullPointMode": "connected", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "span": 6, + "stack": false, + "steppedLine": false, + "targets": [ + { + "aggregator": "avg", + "alias": "Non-heap Used Bytes", + "app": "nimbus", + "downsampleAggregator": "avg", + "errors": {}, + "hosts": "", + "metric": "topology.*.--system.%.%.-1.memory/nonHeap.usedBytes", + "precision": "default", + "refId": "A", + "sTopoMetric": "topology.rolling-top-words-v2.--system.%.%.-1.memory/nonHeap.usedBytes", + "sTopology": "rolling-top-words-v2", + "seriesAggregator": "sum", + "shouldAggregateSeries": false, + "transform": "none" + } + ], + "timeFrom": null, + "timeShift": null, + "title": "All workers memory usage on non-heap", + "tooltip": { + "shared": false, + "value_type": "cumulative" + }, + "type": "graph", + "x-axis": true, + "y-axis": true, + "y_formats": [ + "bytes", + "short" + ] + } + ], + "showTitle": true, + "title": "Memory Usage" + }, + { + "collapse": true, + "editable": true, + "height": "250px", + "panels": [ + { + "aliasColors": {}, + "bars": false, + "datasource": null, + "editable": true, + "error": false, + "fill": 1, + "grid": { + "leftLogBase": 1, + "leftMax": null, + "leftMin": null, + "rightLogBase": 1, + "rightMax": null, + "rightMin": null, + "threshold1": null, + "threshold1Color": "rgba(216, 200, 27, 0.27)", + "threshold2": null, + "threshold2Color": "rgba(234, 112, 112, 0.22)" + }, + "id": 9, + "isNew": true, + "legend": { + "avg": false, + "current": false, + "hideEmpty": true, + "max": false, + "min": false, + "show": false, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 2, + "links": [], + "nullPointMode": "connected", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "span": 6, + "stack": false, + "steppedLine": false, + "targets": [ + { + "aggregator": "sum", + "alias": "PSScavenge count", + "app": "nimbus", + "downsampleAggregator": "avg", + "errors": {}, + "hosts": "", + "metric": "topology.*.--system.%.%.-1.GC/PSScavenge.count", + "precision": "default", + "refId": "A", + "sTopoMetric": "topology.rolling-top-words-v2.--system.%.%.-1.GC/PSScavenge.count", + "sTopology": "rolling-top-words-v2", + "seriesAggregator": "sum", + "shouldAggregateSeries": false, + "transform": "none" + }, + { + "aggregator": "sum", + "alias": "PSMarkSweep count", + "app": "nimbus", + "downsampleAggregator": "avg", + "errors": {}, + "hosts": "", + "metric": "topology.*.--system.%.%.-1.GC/PSMarkSweep.count", + "precision": "default", + "refId": "B", + "sTopoMetric": "topology.rolling-top-words-v2.--system.%.%.-1.GC/PSMarkSweep.count", + "sTopology": "rolling-top-words-v2", + "seriesAggregator": "sum", + "shouldAggregateSeries": false, + "transform": "none" + } + ], + "timeFrom": null, + "timeShift": null, + "title": "All workers GC count", + "tooltip": { + "shared": false, + "value_type": "cumulative" + }, + "type": "graph", + "x-axis": true, + "y-axis": true, + "y_formats": [ + "short", + "short" + ] + }, + { + "aliasColors": {}, + "bars": false, + "datasource": null, + "editable": true, + "error": false, + "fill": 1, + "grid": { + "leftLogBase": 1, + "leftMax": null, + "leftMin": null, + "rightLogBase": 1, + "rightMax": null, + "rightMin": null, + "threshold1": null, + "threshold1Color": "rgba(216, 200, 27, 0.27)", + "threshold2": null, + "threshold2Color": "rgba(234, 112, 112, 0.22)" + }, + "id": 10, + "isNew": true, + "legend": { + "avg": false, + "current": false, + "hideEmpty": true, + "max": false, + "min": false, + "show": false, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 2, + "links": [], + "nullPointMode": "connected", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "span": 6, + "stack": false, + "steppedLine": false, + "targets": [ + { + "aggregator": "sum", + "alias": "PSScavenge timeMs", + "app": "nimbus", + "downsampleAggregator": "avg", + "errors": {}, + "hosts": "", + "metric": "topology.*.--system.%.%.-1.GC/PSScavenge.timeMs", + "precision": "default", + "refId": "A", + "sTopoMetric": "topology.rolling-top-words-v2.--system.%.%.-1.GC/PSScavenge.timeMs", + "sTopology": "rolling-top-words-v2", + "seriesAggregator": "sum", + "shouldAggregateSeries": false, + "transform": "none" + }, + { + "aggregator": "sum", + "alias": "PSMarkSweep timeMs", + "app": "nimbus", + "downsampleAggregator": "avg", + "errors": {}, + "hosts": "", + "metric": "topology.*.--system.%.%.-1.GC/PSMarkSweep.timeMs", + "precision": "default", + "refId": "B", + "sTopoMetric": "topology.rolling-top-words-v2.--system.%.%.-1.GC/PSMarkSweep.timeMs", + "sTopology": "rolling-top-words-v2", + "seriesAggregator": "sum", + "shouldAggregateSeries": false, + "transform": "none" + } + ], + "timeFrom": null, + "timeShift": null, + "title": "All workers GC time", + "tooltip": { + "shared": false, + "value_type": "cumulative" + }, + "type": "graph", + "x-axis": true, + "y-axis": true, + "y_formats": [ + "ms", + "short" + ] + } + ], + "showTitle": true, + "title": "GC" + } + ], + "time": { + "from": "now-6h", + "to": "now" + }, + "timepicker": { + "now": true, + "refresh_intervals": [ + "5s", + "10s", + "30s", + "1m", + "5m", + "15m", + "30m", + "1h", + "2h", + "1d" + ], + "time_options": [ + "5m", + "15m", + "1h", + "6h", + "12h", + "24h", + "2d", + "7d", + "30d" + ] + }, + "templating": { + "list": [ + { + "allFormat": "glob", + "current": { + "text": "All", + "value": "" + }, + "datasource": null, + "includeAll": true, + "multi": true, + "multiFormat": "glob", + "name": "topologies", + "options": [ + { + "text": "All", + "value": "", + "selected": true + } + ], + "query": "topologies", + "refresh": true, + "regex": "", + "type": "query" + } + ] + }, + "annotations": { + "list": [] + }, + "refresh": false, + "schemaVersion": 8, + "version": 3, + "links": [ + { + "asDropdown": true, + "icon": "external link", + "tags": [ + "storm" + ], + "title": "Storm Dashboards", + "type": "dashboards" + } + ] +} \ No newline at end of file http://git-wip-us.apache.org/repos/asf/ambari/blob/de5d68a0/ambari-server/src/main/resources/common-services/AMBARI_METRICS/0.1.0/package/files/grafana-dashboards/HDP/grafana-storm-components.json ---------------------------------------------------------------------- diff --git a/ambari-server/src/main/resources/common-services/AMBARI_METRICS/0.1.0/package/files/grafana-dashboards/HDP/grafana-storm-components.json b/ambari-server/src/main/resources/common-services/AMBARI_METRICS/0.1.0/package/files/grafana-dashboards/HDP/grafana-storm-components.json new file mode 100644 index 0000000..9920320 --- /dev/null +++ b/ambari-server/src/main/resources/common-services/AMBARI_METRICS/0.1.0/package/files/grafana-dashboards/HDP/grafana-storm-components.json @@ -0,0 +1,579 @@ +{ + "id": null, + "title": "Storm - Components", + "originalTitle": "Storm - Components", + "tags": [ + "storm" + ], + "style": "dark", + "timezone": "browser", + "editable": true, + "hideControls": false, + "sharedCrosshair": false, + "rows": [ + { + "collapse": false, + "editable": true, + "height": "25px", + "panels": [ + { + "content": "<h4 align=\"center\">Metrics to see the status for the Storm topologies on a per component level. Click on each row title to expand on demand to look at various metrics. </h4>\n<h6 style=\"color:red;\" align=\"center\">This dashboard is managed by Ambari. You may lose any changes made to this dashboard. If you want to customize, make your own copy.</h6>\n<h5 align=\"center\">Note: Period ('.') contained topology names are not supported.</h5>", + "editable": true, + "error": false, + "id": 14, + "isNew": true, + "links": [], + "mode": "html", + "span": 12, + "style": {}, + "title": "", + "type": "text" + } + ], + "title": "New row" + }, + { + "collapse": false, + "editable": true, + "height": "250px", + "panels": [ + { + "aliasColors": {}, + "bars": false, + "datasource": null, + "editable": true, + "error": false, + "fill": 1, + "grid": { + "leftLogBase": 1, + "leftMax": null, + "leftMin": null, + "rightLogBase": 1, + "rightMax": null, + "rightMin": null, + "threshold1": null, + "threshold1Color": "rgba(216, 200, 27, 0.27)", + "threshold2": null, + "threshold2Color": "rgba(234, 112, 112, 0.22)" + }, + "id": 4, + "isNew": true, + "legend": { + "avg": false, + "current": false, + "hideEmpty": true, + "max": false, + "min": false, + "show": false, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 2, + "links": [], + "nullPointMode": "connected", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "span": 4, + "stack": false, + "steppedLine": false, + "targets": [ + { + "aggregator": "sum", + "alias": "Input Records", + "app": "nimbus", + "downsampleAggregator": "avg", + "errors": {}, + "hosts": "", + "metric": "topology.*.*.%.--execute-count.%", + "precision": "default", + "refId": "A", + "sComponent": "log", + "sTopoMetric": "topology.kafka-topology.log.%.--execute-count.%", + "sTopology": "kafka-topology", + "seriesAggregator": "sum", + "shouldAggregateSeries": true, + "transform": "none" + }, + { + "aggregator": "sum", + "alias": "Output Records", + "app": "nimbus", + "downsampleAggregator": "avg", + "errors": {}, + "hosts": "", + "metric": "topology.*.*.%.--emit-count.%", + "precision": "default", + "refId": "B", + "sComponent": "log", + "sTopoMetric": "topology.kafka-topology.log.%.--emit-count.%", + "sTopology": "kafka-topology", + "seriesAggregator": "sum", + "shouldAggregateSeries": true, + "transform": "none" + } + ], + "timeFrom": null, + "timeShift": null, + "title": "Input / Output", + "tooltip": { + "shared": false, + "value_type": "cumulative" + }, + "type": "graph", + "x-axis": true, + "y-axis": true, + "y_formats": [ + "short", + "short" + ] + }, + { + "aliasColors": {}, + "bars": false, + "datasource": null, + "editable": true, + "error": false, + "fill": 1, + "grid": { + "leftLogBase": 1, + "leftMax": null, + "leftMin": null, + "rightLogBase": 1, + "rightMax": null, + "rightMin": null, + "threshold1": null, + "threshold1Color": "rgba(216, 200, 27, 0.27)", + "threshold2": null, + "threshold2Color": "rgba(234, 112, 112, 0.22)" + }, + "id": 3, + "isNew": true, + "legend": { + "avg": false, + "current": false, + "hideEmpty": true, + "max": false, + "min": false, + "show": false, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 2, + "links": [], + "nullPointMode": "connected", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "span": 4, + "stack": false, + "steppedLine": false, + "targets": [ + { + "aggregator": "sum", + "alias": "Acked Tuples", + "app": "nimbus", + "downsampleAggregator": "avg", + "errors": {}, + "hosts": "", + "metric": "topology.*.*.%.--ack-count.%", + "precision": "default", + "refId": "A", + "sComponent": "log", + "sTopoMetric": "topology.kafka-topology.log.%.--ack-count.%", + "sTopology": "kafka-topology", + "seriesAggregator": "sum", + "shouldAggregateSeries": true, + "transform": "none" + } + ], + "timeFrom": null, + "timeShift": null, + "title": "Acked Tuples", + "tooltip": { + "shared": false, + "value_type": "cumulative" + }, + "type": "graph", + "x-axis": true, + "y-axis": true, + "y_formats": [ + "short", + "short" + ] + }, + { + "aliasColors": {}, + "bars": false, + "datasource": null, + "editable": true, + "error": false, + "fill": 1, + "grid": { + "leftLogBase": 1, + "leftMax": null, + "leftMin": null, + "rightLogBase": 1, + "rightMax": null, + "rightMin": null, + "threshold1": null, + "threshold1Color": "rgba(216, 200, 27, 0.27)", + "threshold2": null, + "threshold2Color": "rgba(234, 112, 112, 0.22)" + }, + "id": 15, + "isNew": true, + "legend": { + "avg": false, + "current": false, + "hideEmpty": true, + "max": false, + "min": false, + "show": false, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 2, + "links": [], + "nullPointMode": "connected", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "span": 4, + "stack": false, + "steppedLine": false, + "targets": [ + { + "aggregator": "avg", + "alias": "Failed Tuples", + "app": "nimbus", + "downsampleAggregator": "avg", + "errors": {}, + "hosts": "", + "metric": "topology.*.*.%.--fail-count.%", + "precision": "default", + "refId": "A", + "sComponent": "log", + "sTopoMetric": "topology.kafka-topology.log.%.--fail-count.%", + "sTopology": "kafka-topology", + "seriesAggregator": "sum", + "shouldAggregateSeries": true, + "transform": "none" + } + ], + "timeFrom": null, + "timeShift": null, + "title": "Failed Tuples", + "tooltip": { + "shared": false, + "value_type": "cumulative" + }, + "type": "graph", + "x-axis": true, + "y-axis": true, + "y_formats": [ + "short", + "short" + ] + } + ], + "showTitle": true, + "title": "Records" + }, + { + "collapse": true, + "editable": true, + "height": "250px", + "panels": [ + { + "aliasColors": {}, + "bars": false, + "datasource": null, + "editable": true, + "error": false, + "fill": 1, + "grid": { + "leftLogBase": 1, + "leftMax": null, + "leftMin": null, + "rightLogBase": 1, + "rightMax": null, + "rightMin": null, + "threshold1": null, + "threshold1Color": "rgba(216, 200, 27, 0.27)", + "threshold2": null, + "threshold2Color": "rgba(234, 112, 112, 0.22)" + }, + "id": 12, + "isNew": true, + "legend": { + "avg": false, + "current": false, + "hideEmpty": true, + "max": false, + "min": false, + "show": false, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 2, + "links": [], + "nullPointMode": "connected", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "span": 6, + "stack": false, + "steppedLine": false, + "targets": [ + { + "aggregator": "avg", + "alias": "Complete Latency", + "app": "nimbus", + "downsampleAggregator": "avg", + "errors": {}, + "hosts": "", + "metric": "topology.*.*.%.--complete-latency.%", + "precision": "default", + "refId": "B", + "sComponent": "log", + "sTopoMetric": "topology.kafka-topology.log.%.--complete-latency.%", + "sTopology": "kafka-topology", + "seriesAggregator": "avg", + "shouldAggregateSeries": true, + "transform": "none" + }, + { + "aggregator": "avg", + "alias": "Process Latency", + "app": "nimbus", + "downsampleAggregator": "avg", + "errors": {}, + "hosts": "", + "metric": "topology.*.*.%.--process-latency.%", + "precision": "default", + "refId": "A", + "sComponent": "log", + "sTopoMetric": "topology.kafka-topology.log.%.--process-latency.%", + "sTopology": "kafka-topology", + "seriesAggregator": "avg", + "shouldAggregateSeries": true, + "transform": "none" + } + ], + "timeFrom": null, + "timeShift": null, + "title": "Latency", + "tooltip": { + "shared": false, + "value_type": "cumulative" + }, + "type": "graph", + "x-axis": true, + "y-axis": true, + "y_formats": [ + "ms", + "short" + ] + }, + { + "aliasColors": {}, + "bars": false, + "datasource": null, + "editable": true, + "error": false, + "fill": 1, + "grid": { + "leftLogBase": 1, + "leftMax": null, + "leftMin": null, + "rightLogBase": 1, + "rightMax": null, + "rightMin": null, + "threshold1": null, + "threshold1Color": "rgba(216, 200, 27, 0.27)", + "threshold2": null, + "threshold2Color": "rgba(234, 112, 112, 0.22)" + }, + "id": 2, + "isNew": true, + "legend": { + "avg": false, + "current": false, + "hideEmpty": true, + "max": false, + "min": false, + "show": false, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 2, + "links": [], + "nullPointMode": "connected", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "span": 6, + "stack": false, + "steppedLine": false, + "targets": [ + { + "aggregator": "sum", + "alias": "Receive Queue Population", + "app": "nimbus", + "downsampleAggregator": "avg", + "errors": {}, + "hosts": "", + "metric": "topology.*.*.%.--receive.population", + "precision": "default", + "refId": "A", + "sComponent": "log", + "sTopoMetric": "topology.kafka-topology.log.%.--receive.population", + "sTopology": "kafka-topology", + "seriesAggregator": "sum", + "shouldAggregateSeries": true, + "transform": "none" + }, + { + "aggregator": "sum", + "alias": "Send Queue Population", + "app": "nimbus", + "downsampleAggregator": "avg", + "errors": {}, + "hosts": "", + "metric": "topology.*.*.%.--sendqueue.population", + "precision": "default", + "refId": "B", + "sComponent": "log", + "sTopoMetric": "topology.kafka-topology.log.%.--sendqueue.population", + "sTopology": "kafka-topology", + "seriesAggregator": "sum", + "shouldAggregateSeries": true, + "transform": "none" + } + ], + "timeFrom": null, + "timeShift": null, + "title": "Queue", + "tooltip": { + "shared": false, + "value_type": "cumulative" + }, + "type": "graph", + "x-axis": true, + "y-axis": true, + "y_formats": [ + "short", + "short" + ] + } + ], + "showTitle": true, + "title": "Latency / Queue" + } + ], + "time": { + "from": "now-6h", + "to": "now" + }, + "timepicker": { + "now": true, + "refresh_intervals": [ + "5s", + "10s", + "30s", + "1m", + "5m", + "15m", + "30m", + "1h", + "2h", + "1d" + ], + "time_options": [ + "5m", + "15m", + "1h", + "6h", + "12h", + "24h", + "2d", + "7d", + "30d" + ] + }, + "templating": { + "list": [ + { + "allFormat": "glob", + "current": { + "text": "kafka-topology", + "value": "kafka-topology" + }, + "datasource": null, + "includeAll": false, + "multi": false, + "multiFormat": "glob", + "name": "topologies", + "options": [ + + ], + "query": "topologies", + "refresh": true, + "regex": "", + "type": "query" + }, + { + "allFormat": "glob", + "current": { + "text": "", + "value": "" + }, + "datasource": null, + "includeAll": false, + "multi": false, + "multiFormat": "glob", + "name": "component", + "options": [ + + ], + "query": "$topologies.stormComponent", + "refresh": true, + "regex": "", + "type": "query" + } + ] + }, + "annotations": { + "list": [] + }, + "refresh": false, + "schemaVersion": 8, + "version": 10, + "links": [ + { + "asDropdown": true, + "icon": "external link", + "tags": [ + "storm" + ], + "title": "Storm Dashboards", + "type": "dashboards" + } + ] +} \ No newline at end of file
