diff --git a/src/app/controllers/influxTargetCtrl.js b/src/app/controllers/influxTargetCtrl.js index b8101ab9577..175bf268098 100644 --- a/src/app/controllers/influxTargetCtrl.js +++ b/src/app/controllers/influxTargetCtrl.js @@ -83,10 +83,11 @@ function (angular) { }; $scope.listSeries = function(query, callback) { - if (!seriesList || query === '') { + if (query !== '') { seriesList = []; - $scope.datasource.listSeries().then(function(series) { + $scope.datasource.listSeries(query).then(function(series) { seriesList = series; + console.log(series); callback(seriesList); }); } diff --git a/src/app/partials/influxdb/editor.html b/src/app/partials/influxdb/editor.html index 4fd13645d3d..fdc14166b7e 100644 --- a/src/app/partials/influxdb/editor.html +++ b/src/app/partials/influxdb/editor.html @@ -64,6 +64,8 @@ ng-model="target.series" spellcheck='false' bs-typeahead="listSeries" + match-all="true" + min-length="3" placeholder="series name" data-min-length=0 data-items=100 ng-blur="seriesBlur()"> diff --git a/src/app/services/influxdb/influxdbDatasource.js b/src/app/services/influxdb/influxdbDatasource.js index 757c2ef0d32..1f44dbe78ef 100644 --- a/src/app/services/influxdb/influxdbDatasource.js +++ b/src/app/services/influxdb/influxdbDatasource.js @@ -85,8 +85,13 @@ function (angular, _, kbn, InfluxSeries, InfluxQueryBuilder) { }); }; - InfluxDatasource.prototype.listSeries = function() { - return this._seriesQuery('list series').then(function(data) { + InfluxDatasource.prototype.listSeries = function(query) { + // wrap in regex + if (query && query.length > 0 && query[0] !== '/') { + query = '/' + query + '/'; + } + + return this._seriesQuery('list series ' + query).then(function(data) { if (!data || data.length === 0) { return []; }