Add prometheus operation ids (#45216)

pull/45233/head
Ivana Huckova 3 years ago committed by GitHub
parent 3eac34f5f3
commit 6bc527a211
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 37
      public/app/plugins/datasource/prometheus/querybuilder/aggregations.ts
  2. 15
      public/app/plugins/datasource/prometheus/querybuilder/types.ts

@ -7,25 +7,25 @@ import {
getPromAndLokiOperationDisplayName, getPromAndLokiOperationDisplayName,
} from './shared/operationUtils'; } from './shared/operationUtils';
import { QueryBuilderOperation, QueryBuilderOperationDef, QueryBuilderOperationParamDef } from './shared/types'; import { QueryBuilderOperation, QueryBuilderOperationDef, QueryBuilderOperationParamDef } from './shared/types';
import { PromVisualQueryOperationCategory } from './types'; import { PromVisualQueryOperationCategory, PromOperationId } from './types';
export function getAggregationOperations(): QueryBuilderOperationDef[] { export function getAggregationOperations(): QueryBuilderOperationDef[] {
return [ return [
...createAggregationOperation('sum'), ...createAggregationOperation(PromOperationId.Sum),
...createAggregationOperation('avg'), ...createAggregationOperation(PromOperationId.Avg),
...createAggregationOperation('min'), ...createAggregationOperation(PromOperationId.Min),
...createAggregationOperation('max'), ...createAggregationOperation(PromOperationId.Max),
...createAggregationOperation('count'), ...createAggregationOperation(PromOperationId.Count),
...createAggregationOperation('topk'), ...createAggregationOperation(PromOperationId.Topk),
createAggregationOverTime('sum'), createAggregationOverTime(PromOperationId.SumOverTime),
createAggregationOverTime('avg'), createAggregationOverTime(PromOperationId.AvgOverTime),
createAggregationOverTime('min'), createAggregationOverTime(PromOperationId.MinOverTime),
createAggregationOverTime('max'), createAggregationOverTime(PromOperationId.MaxOverTime),
createAggregationOverTime('count'), createAggregationOverTime(PromOperationId.CountOverTime),
createAggregationOverTime('last'), createAggregationOverTime(PromOperationId.LastOverTime),
createAggregationOverTime('present'), createAggregationOverTime(PromOperationId.PresentOverTime),
createAggregationOverTime('stddev'), createAggregationOverTime(PromOperationId.StddevOverTime),
createAggregationOverTime('stdvar'), createAggregationOverTime(PromOperationId.StdvarOverTime),
]; ];
} }
@ -172,10 +172,9 @@ function getOnLabelAdddedHandler(changeToOperartionId: string) {
} }
function createAggregationOverTime(name: string): QueryBuilderOperationDef { function createAggregationOverTime(name: string): QueryBuilderOperationDef {
const functionName = `${name}_over_time`;
return { return {
id: functionName, id: name,
name: getPromAndLokiOperationDisplayName(functionName), name: getPromAndLokiOperationDisplayName(name),
params: [getAggregationOverTimeRangeVector()], params: [getAggregationOverTimeRangeVector()],
defaultParams: ['auto'], defaultParams: ['auto'],
alternativesKey: 'overtime function', alternativesKey: 'overtime function',

@ -32,6 +32,21 @@ export enum PromOperationId {
MultiplyBy = '__multiply_by', MultiplyBy = '__multiply_by',
DivideBy = '__divide_by', DivideBy = '__divide_by',
NestedQuery = '__nested_query', NestedQuery = '__nested_query',
Sum = 'sum',
Avg = 'avg',
Min = 'min',
Max = 'max',
Count = 'count',
Topk = 'topk',
SumOverTime = 'sum_over_time',
AvgOverTime = 'avg_over_time',
MinOverTime = 'min_over_time',
MaxOverTime = 'max_over_time',
CountOverTime = 'count_over_time',
LastOverTime = 'last_over_time',
PresentOverTime = 'present_over_time',
StddevOverTime = 'stddev_over_time',
StdvarOverTime = 'stdvar_over_time',
} }
export interface PromQueryPattern { export interface PromQueryPattern {

Loading…
Cancel
Save