elasticsearch

package
v1.29.8 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 14, 2025 License: AGPL-3.0 Imports: 19 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func CollectMetricData

func CollectMetricData(agg interface{}, groupValues string, metricData *[]alerting.MetricData)

Types

type BucketDiffState added in v1.28.2

type BucketDiffState struct {
	ContentChangeState int
	DocCount           int
}

type Engine

type Engine struct {
}

func (*Engine) CheckBucketCondition added in v1.28.2

func (engine *Engine) CheckBucketCondition(rule *alerting.Rule, targetMetricData []alerting.MetricData, queryResult *alerting.QueryResult) (*alerting.ConditionResult, error)

func (*Engine) CheckCondition

func (engine *Engine) CheckCondition(rule *alerting.Rule) (*alerting.ConditionResult, error)

CheckCondition check whether rule conditions triggered or not if triggered returns an ConditionResult sort conditions by priority desc before check , and then if condition is true, then continue check another group

func (*Engine) ConvertFilterQueryToDsl

func (engine *Engine) ConvertFilterQueryToDsl(fq *alerting.FilterQuery) (map[string]interface{}, error)

func (*Engine) Do

func (engine *Engine) Do(rule *alerting.Rule) error

func (*Engine) ExecuteQuery

func (engine *Engine) ExecuteQuery(rule *alerting.Rule, filterParam *alerting.FilterParam) (*alerting.QueryResult, error)

func (*Engine) GenerateQuery

func (engine *Engine) GenerateQuery(rule *alerting.Rule, filterParam *alerting.FilterParam) (interface{}, error)

GenerateQuery generate a final elasticsearch query dsl object when RawFilter of rule is not empty, priority use it, otherwise to covert from Filter of rule (todo) auto generate time filter query and then attach to final query auto generate elasticsearch aggregations by metrics of rule group of metric item converted to terms aggregation and TimeField of rule converted to date_histogram aggregation convert statistic of metric item to elasticsearch aggregation

func (*Engine) GenerateRawFilter

func (engine *Engine) GenerateRawFilter(rule *alerting.Rule, filterParam *alerting.FilterParam) (map[string]interface{}, error)

func (*Engine) GenerateTask

func (engine *Engine) GenerateTask(rule alerting.Rule) func(ctx context.Context)

func (*Engine) GetTargetMetricData

func (engine *Engine) GetTargetMetricData(rule *alerting.Rule, isFilterNaN bool, filterParam *alerting.FilterParam) ([]alerting.MetricData, *alerting.QueryResult, error)

func (*Engine) Test

func (engine *Engine) Test(rule *alerting.Rule, msgType string) ([]alerting.ActionExecutionResult, error)

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL