From 8c39cd35f0d440e50294824fd95fea87d4423dca Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Torkel=20=C3=96degaard?= Date: Wed, 11 Jan 2017 10:18:21 +0100 Subject: [PATCH] progress on interval built in variable --- .../core/components/query_part/query_part.ts | 2 +- .../templating/specs/template_srv_specs.ts | 4 ++-- public/app/features/templating/templateSrv.js | 4 ++++ .../datasource/elasticsearch/query_builder.js | 2 +- .../datasource/influxdb/influx_query.ts | 2 +- .../influxdb/specs/influx_query_specs.ts | 18 +++++++++--------- 6 files changed, 18 insertions(+), 14 deletions(-) diff --git a/public/app/core/components/query_part/query_part.ts b/public/app/core/components/query_part/query_part.ts index fcd337a0a26..cf6780ac182 100644 --- a/public/app/core/components/query_part/query_part.ts +++ b/public/app/core/components/query_part/query_part.ts @@ -89,7 +89,7 @@ export function functionRenderer(part, innerExpr) { var paramType = part.def.params[index]; if (paramType.type === 'time') { if (value === 'auto') { - value = '$interval'; + value = '$__interval'; } } if (paramType.quote === 'single') { diff --git a/public/app/features/templating/specs/template_srv_specs.ts b/public/app/features/templating/specs/template_srv_specs.ts index 5826e359c01..24e9eb0079e 100644 --- a/public/app/features/templating/specs/template_srv_specs.ts +++ b/public/app/features/templating/specs/template_srv_specs.ts @@ -245,8 +245,8 @@ describe('templateSrv', function() { initTemplateSrv([]); }); - it('should replace $interval_ms with interval milliseconds', function() { - var target = _templateSrv.replace('10 * $interval_ms', {"interval_ms": {text: "100", value: "100"}}); + it('should replace $__interval_ms with interval milliseconds', function() { + var target = _templateSrv.replace('10 * $__interval_ms', {"__interval_ms": {text: "100", value: "100"}}); expect(target).to.be('10 * 100'); }); diff --git a/public/app/features/templating/templateSrv.js b/public/app/features/templating/templateSrv.js index 6abd4dd69e4..52a17de3119 100644 --- a/public/app/features/templating/templateSrv.js +++ b/public/app/features/templating/templateSrv.js @@ -42,6 +42,10 @@ function (angular, _, kbn) { this._index[variable.name] = variable; } + + // default built ins + this._index['__interval'] = {text: '1s', value: '1s'}; + this._index['__interval_ms'] = {text: '100', value: '100'}; }; this.variableInitialized = function(variable) { diff --git a/public/app/plugins/datasource/elasticsearch/query_builder.js b/public/app/plugins/datasource/elasticsearch/query_builder.js index 02b74fd4ee3..26e338957f4 100644 --- a/public/app/plugins/datasource/elasticsearch/query_builder.js +++ b/public/app/plugins/datasource/elasticsearch/query_builder.js @@ -66,7 +66,7 @@ function (queryDef) { esAgg.format = "epoch_millis"; if (esAgg.interval === 'auto') { - esAgg.interval = "$interval"; + esAgg.interval = "$__interval"; } if (settings.missing) { diff --git a/public/app/plugins/datasource/influxdb/influx_query.ts b/public/app/plugins/datasource/influxdb/influx_query.ts index 2f03f37a0a1..065b85cf175 100644 --- a/public/app/plugins/datasource/influxdb/influx_query.ts +++ b/public/app/plugins/datasource/influxdb/influx_query.ts @@ -23,7 +23,7 @@ export default class InfluxQuery { target.resultFormat = target.resultFormat || 'time_series'; target.tags = target.tags || []; target.groupBy = target.groupBy || [ - {type: 'time', params: ['$interval']}, + {type: 'time', params: ['$__interval']}, {type: 'fill', params: ['null']}, ]; target.select = target.select || [[ diff --git a/public/app/plugins/datasource/influxdb/specs/influx_query_specs.ts b/public/app/plugins/datasource/influxdb/specs/influx_query_specs.ts index 52beed1d080..c162c488f82 100644 --- a/public/app/plugins/datasource/influxdb/specs/influx_query_specs.ts +++ b/public/app/plugins/datasource/influxdb/specs/influx_query_specs.ts @@ -12,7 +12,7 @@ describe('InfluxQuery', function() { }, templateSrv, {}); var queryText = query.render(); - expect(queryText).to.be('SELECT mean("value") FROM "cpu" WHERE $timeFilter GROUP BY time($interval) fill(null)'); + expect(queryText).to.be('SELECT mean("value") FROM "cpu" WHERE $timeFilter GROUP BY time($__interval) fill(null)'); }); }); @@ -24,7 +24,7 @@ describe('InfluxQuery', function() { }, templateSrv, {}); var queryText = query.render(); - expect(queryText).to.be('SELECT mean("value") FROM "5m_avg"."cpu" WHERE $timeFilter GROUP BY time($interval) fill(null)'); + expect(queryText).to.be('SELECT mean("value") FROM "5m_avg"."cpu" WHERE $timeFilter GROUP BY time($__interval) fill(null)'); }); }); @@ -43,7 +43,7 @@ describe('InfluxQuery', function() { }, templateSrv, {}); var queryText = query.render(); - expect(queryText).to.be('SELECT mean("value") /100 AS "text" FROM "cpu" WHERE $timeFilter GROUP BY time($interval) fill(null)'); + expect(queryText).to.be('SELECT mean("value") /100 AS "text" FROM "cpu" WHERE $timeFilter GROUP BY time($__interval) fill(null)'); }); }); @@ -58,7 +58,7 @@ describe('InfluxQuery', function() { var queryText = query.render(); expect(queryText).to.be('SELECT mean("value") FROM "cpu" WHERE "hostname" = \'server\\\\1\' AND $timeFilter' - + ' GROUP BY time($interval)'); + + ' GROUP BY time($__interval)'); }); it('should switch regex operator with tag value is regex', function() { @@ -69,7 +69,7 @@ describe('InfluxQuery', function() { }, templateSrv, {}); var queryText = query.render(); - expect(queryText).to.be('SELECT mean("value") FROM "cpu" WHERE "app" =~ /e.*/ AND $timeFilter GROUP BY time($interval)'); + expect(queryText).to.be('SELECT mean("value") FROM "cpu" WHERE "app" =~ /e.*/ AND $timeFilter GROUP BY time($__interval)'); }); }); @@ -83,7 +83,7 @@ describe('InfluxQuery', function() { var queryText = query.render(); expect(queryText).to.be('SELECT mean("value") FROM "cpu" WHERE "hostname" = \'server1\' AND "app" = \'email\' AND ' + - '$timeFilter GROUP BY time($interval)'); + '$timeFilter GROUP BY time($__interval)'); }); }); @@ -97,7 +97,7 @@ describe('InfluxQuery', function() { var queryText = query.render(); expect(queryText).to.be('SELECT mean("value") FROM "cpu" WHERE "hostname" = \'server1\' OR "hostname" = \'server2\' AND ' + - '$timeFilter GROUP BY time($interval)'); + '$timeFilter GROUP BY time($__interval)'); }); }); @@ -124,7 +124,7 @@ describe('InfluxQuery', function() { var queryText = query.render(); expect(queryText).to.be('SELECT mean("value") FROM "cpu" WHERE $timeFilter ' + - 'GROUP BY time($interval), "host"'); + 'GROUP BY time($__interval), "host"'); }); }); @@ -148,7 +148,7 @@ describe('InfluxQuery', function() { groupBy: [{type: 'time'}, {type: 'fill', params: ['0']}], }, templateSrv, {}); var queryText = query.render(); - expect(queryText).to.be('SELECT "value" FROM "cpu" WHERE $timeFilter GROUP BY time($interval) fill(0)'); + expect(queryText).to.be('SELECT "value" FROM "cpu" WHERE $timeFilter GROUP BY time($__interval) fill(0)'); }); });