From d6e4fb46cff7d9f34eb9972d78a082c79bddef13 Mon Sep 17 00:00:00 2001 From: benrubson Date: Sun, 21 Feb 2016 21:48:09 +0100 Subject: [PATCH 1/4] Add a minimum value option for template auto interval --- public/app/core/utils/kbn.js | 6 +++++- public/app/features/templating/partials/editor.html | 6 ++++++ public/app/features/templating/templateValuesSrv.js | 2 +- 3 files changed, 12 insertions(+), 2 deletions(-) diff --git a/public/app/core/utils/kbn.js b/public/app/core/utils/kbn.js index fbb854148f9..a6b08f1526f 100644 --- a/public/app/core/utils/kbn.js +++ b/public/app/core/utils/kbn.js @@ -119,10 +119,14 @@ function($, _) { s: 1 }; - kbn.calculateInterval = function(range, resolution, userInterval) { + kbn.calculateInterval = function(range, resolution, userInterval, lowLimit) { var lowLimitMs = 1; // 1 millisecond default low limit var intervalMs, lowLimitInterval; + if(lowLimit) { + lowLimitMs = kbn.interval_to_ms(lowLimit); + } + if (userInterval) { if (userInterval[0] === '>') { lowLimitInterval = userInterval.slice(1); diff --git a/public/app/features/templating/partials/editor.html b/public/app/features/templating/partials/editor.html index 98212225f25..0aa69aaf714 100644 --- a/public/app/features/templating/partials/editor.html +++ b/public/app/features/templating/partials/editor.html @@ -134,6 +134,12 @@
  • +
  • + Auto interval min value The calculated value will not go below this threshold +
  • +
  • + +
  • diff --git a/public/app/features/templating/templateValuesSrv.js b/public/app/features/templating/templateValuesSrv.js index 6029bdf899c..aa2cb177727 100644 --- a/public/app/features/templating/templateValuesSrv.js +++ b/public/app/features/templating/templateValuesSrv.js @@ -60,7 +60,7 @@ function (angular, _, kbn) { variable.options.unshift({ text: 'auto', value: '$__auto_interval' }); } - var interval = kbn.calculateInterval(timeSrv.timeRange(), variable.auto_count); + var interval = kbn.calculateInterval(timeSrv.timeRange(), variable.auto_count, null, variable.auto_min); templateSrv.setGrafanaVariable('$__auto_interval', interval); }; From ab9757082efa2f94f1a0fa659cd47037a79f6d90 Mon Sep 17 00:00:00 2001 From: benrubson Date: Sun, 21 Feb 2016 22:00:00 +0100 Subject: [PATCH 2/4] Code style typo --- public/app/core/utils/kbn.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/public/app/core/utils/kbn.js b/public/app/core/utils/kbn.js index a6b08f1526f..430c2175561 100644 --- a/public/app/core/utils/kbn.js +++ b/public/app/core/utils/kbn.js @@ -123,7 +123,7 @@ function($, _) { var lowLimitMs = 1; // 1 millisecond default low limit var intervalMs, lowLimitInterval; - if(lowLimit) { + if (lowLimit) { lowLimitMs = kbn.interval_to_ms(lowLimit); } From b9843fe6d164195df5083a44d16ce0f7dd8991b0 Mon Sep 17 00:00:00 2001 From: benrubson Date: Sun, 21 Feb 2016 22:07:01 +0100 Subject: [PATCH 3/4] Code style typo --- public/app/core/utils/kbn.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/public/app/core/utils/kbn.js b/public/app/core/utils/kbn.js index 430c2175561..8f4970b0a83 100644 --- a/public/app/core/utils/kbn.js +++ b/public/app/core/utils/kbn.js @@ -124,7 +124,7 @@ function($, _) { var intervalMs, lowLimitInterval; if (lowLimit) { - lowLimitMs = kbn.interval_to_ms(lowLimit); + lowLimitMs = kbn.interval_to_ms(lowLimit); } if (userInterval) { From c9fe2bab6042efc12cfda9d75dfd842bc738a31a Mon Sep 17 00:00:00 2001 From: benrubson Date: Mon, 22 Feb 2016 10:27:08 +0100 Subject: [PATCH 4/4] make it more smartly --- public/app/core/utils/kbn.js | 6 +----- public/app/features/templating/templateValuesSrv.js | 2 +- 2 files changed, 2 insertions(+), 6 deletions(-) diff --git a/public/app/core/utils/kbn.js b/public/app/core/utils/kbn.js index 8f4970b0a83..fbb854148f9 100644 --- a/public/app/core/utils/kbn.js +++ b/public/app/core/utils/kbn.js @@ -119,14 +119,10 @@ function($, _) { s: 1 }; - kbn.calculateInterval = function(range, resolution, userInterval, lowLimit) { + kbn.calculateInterval = function(range, resolution, userInterval) { var lowLimitMs = 1; // 1 millisecond default low limit var intervalMs, lowLimitInterval; - if (lowLimit) { - lowLimitMs = kbn.interval_to_ms(lowLimit); - } - if (userInterval) { if (userInterval[0] === '>') { lowLimitInterval = userInterval.slice(1); diff --git a/public/app/features/templating/templateValuesSrv.js b/public/app/features/templating/templateValuesSrv.js index aa2cb177727..2760bb42ca0 100644 --- a/public/app/features/templating/templateValuesSrv.js +++ b/public/app/features/templating/templateValuesSrv.js @@ -60,7 +60,7 @@ function (angular, _, kbn) { variable.options.unshift({ text: 'auto', value: '$__auto_interval' }); } - var interval = kbn.calculateInterval(timeSrv.timeRange(), variable.auto_count, null, variable.auto_min); + var interval = kbn.calculateInterval(timeSrv.timeRange(), variable.auto_count, (variable.auto_min ? ">"+variable.auto_min : null)); templateSrv.setGrafanaVariable('$__auto_interval', interval); };