From bfecb04697c3f05ca67b0e7c5b1fda6939e473ef Mon Sep 17 00:00:00 2001 From: Marco Vito Moscaritolo Date: Thu, 1 May 2014 00:43:34 +0200 Subject: [PATCH 1/2] InfluxDB Filters: added function to generate filter list. --- .../services/influxdb/influxdbDatasource.js | 22 ++++++++++++++++++- 1 file changed, 21 insertions(+), 1 deletion(-) diff --git a/src/app/services/influxdb/influxdbDatasource.js b/src/app/services/influxdb/influxdbDatasource.js index 7da26744418..42ce647d7e8 100644 --- a/src/app/services/influxdb/influxdbDatasource.js +++ b/src/app/services/influxdb/influxdbDatasource.js @@ -8,7 +8,7 @@ function (angular, _, kbn) { var module = angular.module('kibana.services'); - module.factory('InfluxDatasource', function($q, $http) { + module.factory('InfluxDatasource', function($q, $http, filterSrv) { function InfluxDatasource(datasource) { this.type = 'influxDB'; @@ -110,6 +110,26 @@ function (angular, _, kbn) { }); }; + InfluxDatasource.prototype.metricFindQuery = function (query) { + var interpolated; + try { + interpolated = filterSrv.applyFilterToTarget(query); + } + catch(err) { + return $q.reject(err); + } + + return this.doInfluxRequest(query, 'filters') + .then(function (results) { + return _.map(results[0].points, function (metric) { + return { + text: metric[1], + expandable: false + }; + }); + }); + }; + function retry(deferred, callback, delay) { return callback().then(undefined, function(reason) { if (reason.status !== 0) { From cc43f15eab8f642d73b1acd26d087d09bb75a727 Mon Sep 17 00:00:00 2001 From: Marco Vito Moscaritolo Date: Thu, 1 May 2014 00:44:42 +0200 Subject: [PATCH 2/2] InfluxDB Filters: added filter to queries. --- src/app/services/influxdb/influxdbDatasource.js | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/app/services/influxdb/influxdbDatasource.js b/src/app/services/influxdb/influxdbDatasource.js index 42ce647d7e8..6b997c1f3a8 100644 --- a/src/app/services/influxdb/influxdbDatasource.js +++ b/src/app/services/influxdb/influxdbDatasource.js @@ -60,6 +60,7 @@ function (angular, _, kbn) { } query = queryElements.join(" "); + query = filterSrv.applyFilterToTarget(query); } else { var template = "select [[func]](\"[[column]]\") as \"[[column]]_[[func]]\" from [[series]] " + @@ -79,6 +80,7 @@ function (angular, _, kbn) { }; query = _.template(template, templateData, this.templateSettings); + query = filterSrv.applyFilterToTarget(query); target.query = query; }