in ambari-metrics-grafana/ambari-metrics/datasource.js [100:143]
var getMetricsData = function (target) {
var alias = target.alias ? target.alias : target.metric;
if (!_.isEmpty(templateSrv.variables) && templateSrv.variables[0].query === "yarnqueues") {
alias = alias + ' on ' + target.qmetric;
}
if (!_.isEmpty(templateSrv.variables) && templateSrv.variables[0].query === "kafka-topics") {
alias = alias + ' on ' + target.kbTopic;
}
return function (res) {
res = res.data;
console.log('processing metric ' + target.metric);
if (!res.metrics[0] || target.hide) {
return $q.when(emptyData(target));
}
var series = [];
var metricData = res.metrics;
_.map(metricData, function (data) {
// Added hostname to legend for templated dashboards.
var hostLegend = data.hostname ? ' on ' + data.hostname : '';
var alias = target.alias ? target.alias : target.metric;
if(!_.isEmpty(templateSrv.variables) && templateSrv.variables[0].query === "yarnqueues") {
alias = alias + ' on ' + target.qmetric; }
if(!_.isEmpty(templateSrv.variables) && templateSrv.variables[0].query === "kafka-topics") {
alias = alias + ' on ' + target.kbTopic; }
if (!alias.includes("%") || !data.metricname.includes('live_hosts')) {
if (!alias || alias.includes("%")) {
alias = data.metricname;
}
var timeSeries = {};
timeSeries = {
target: alias + hostLegend,
datapoints: []
};
for (var k in data.metrics) {
if (data.metrics.hasOwnProperty(k)) {
timeSeries.datapoints.push([data.metrics[k], (k - k % 1000)]);
}
}
series.push(timeSeries);
}
});
return $q.when({data: series});
};
};