diff --git a/public/app/plugins/datasource/opentsdb/datasource.js b/public/app/plugins/datasource/opentsdb/datasource.js index 1d3db75658c..4a703798e15 100644 --- a/public/app/plugins/datasource/opentsdb/datasource.js +++ b/public/app/plugins/datasource/opentsdb/datasource.js @@ -162,12 +162,21 @@ function (angular, _, dateMath) { }); }; - this._performMetricKeyValueLookup = function(metric, key) { - if(!metric || !key) { + this._performMetricKeyValueLookup = function(metric, keys) { + + if(!metric || !keys) { return $q.when([]); } - var m = metric + "{" + key + "=*}"; + var keysArray = keys.split(","); + var key = keysArray[0]; + var keysQuery = key + "=*"; + + if (keysArray.length > 1) { + keysQuery += "," + keysArray.splice(1).join(","); + } + + var m = metric + "{" + keysQuery + "}"; return this._get('/api/search/lookup', {m: m, limit: 3000}).then(function(result) { result = result.data.results; @@ -225,7 +234,7 @@ function (angular, _, dateMath) { var metrics_regex = /metrics\((.*)\)/; var tag_names_regex = /tag_names\((.*)\)/; - var tag_values_regex = /tag_values\((.*),\s?(.*)\)/; + var tag_values_regex = /tag_values\((.*?),\s?(.*)\)/; var tag_names_suggest_regex = /suggest_tagk\((.*)\)/; var tag_values_suggest_regex = /suggest_tagv\((.*)\)/;