From 49bec6ce4fed79dc4b07295b5068084b61eeeb1e Mon Sep 17 00:00:00 2001 From: "Grot (@grafanabot)" <43478413+grafanabot@users.noreply.github.com> Date: Fri, 17 Sep 2021 03:41:16 -0400 Subject: [PATCH] prometheus: query-editor: better duration-completions (#39284) (#39314) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit (cherry picked from commit f8de33da8d833b86eb0a03cdab1edf8c2ca8b510) Co-authored-by: Gábor Farkas --- .../monaco-completion-provider/completions.ts | 25 ++++++++++++------- 1 file changed, 16 insertions(+), 9 deletions(-) diff --git a/public/app/plugins/datasource/prometheus/components/monaco-query-field/monaco-completion-provider/completions.ts b/public/app/plugins/datasource/prometheus/components/monaco-query-field/monaco-completion-provider/completions.ts index 36f00ce4fa2..f5bf275f08d 100644 --- a/public/app/plugins/datasource/prometheus/components/monaco-query-field/monaco-completion-provider/completions.ts +++ b/public/app/plugins/datasource/prometheus/components/monaco-query-field/monaco-completion-provider/completions.ts @@ -49,14 +49,21 @@ function getAllFunctionsCompletions(): Completion[] { })); } -function getAllDurationsCompletions(): Completion[] { - // FIXME: get a better list - return ['5m', '1m', '30s', '15s'].map((text) => ({ - type: 'DURATION', - label: text, - insertText: text, - })); -} +const DURATION_COMPLETIONS: Completion[] = [ + '$__interval', + '$__range', + '$__rate_interval', + '1m', + '5m', + '10m', + '30m', + '1h', + '1d', +].map((text) => ({ + type: 'DURATION', + label: text, + insertText: text, +})); async function getAllHistoryCompletions(dataProvider: DataProvider): Promise { // function getAllHistoryCompletions(queryHistory: PromHistoryItem[]): Completion[] { @@ -137,7 +144,7 @@ async function getLabelValuesForMetricCompletions( export async function getCompletions(intent: Intent, dataProvider: DataProvider): Promise { switch (intent.type) { case 'ALL_DURATIONS': - return getAllDurationsCompletions(); + return DURATION_COMPLETIONS; case 'ALL_METRIC_NAMES': return getAllMetricNamesCompletions(dataProvider); case 'FUNCTIONS_AND_ALL_METRIC_NAMES': {