rule

package
v0.0.0-...-0248c43 Latest Latest
Warning

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

Go to latest
Published: Jun 29, 2018 License: Apache-2.0 Imports: 10 Imported by: 0

Documentation

Index

Constants

View Source
const (
	STOP = iota
	START
)

Variables

View Source
var RuleContextMap = map[string]*RuleContext{}

RuleContextMap 保存各个rule允许的状态

Functions

func MergeConfig

func MergeConfig(rule config.RuleConfig) config.RuleConfig

MergeConfig 合并原始信息

func NeedAlert

func NeedAlert(res map[string]interface{}, script string) (alert bool, err error)

NeedAlert 根据结果判断是否需要发送报警信息

func Run

func Run(con config.Config) error

Run 启动配置参数

Types

type Rule

type Rule interface {
	GetName() string
	Run(ctx context.Context)
}

func CreateRule

func CreateRule(con config.RuleConfig) Rule

func GetRule

func GetRule(ruleConfig config.RuleConfig) (rule Rule, err error)

GetRule 根据配置获取rule运行时

type RuleContext

type RuleContext struct {
	Status int

	RuleConfig config.RuleConfig
	// contains filtered or unexported fields
}

RuleContext rule运行的上下文

func RunRule

func RunRule(ruleConfig config.RuleConfig) (rc *RuleContext, err error)

RunRule 根据rule配置运行rule并保存在context中,会自动合并总配置文件的配置

func (*RuleContext) Restart

func (rc *RuleContext) Restart() error

Restart 如果已经启动,重新启动;如果没有启动,启动该rule

func (*RuleContext) Start

func (rc *RuleContext) Start() error

Start 启动某个rule

func (*RuleContext) Stop

func (rc *RuleContext) Stop() error

Stop 停止某个rule

type RuleError

type RuleError struct {
	Message string
}

func (RuleError) Error

func (ruleError RuleError) Error() string

type SampleRule

type SampleRule struct {
	Name    string
	Storage storage.Storage
	Tick    *time.Ticker
	Time    int32
	Script  string
	Alerter []alert.Alerter
}

func (SampleRule) GetName

func (rule SampleRule) GetName() string

func (SampleRule) Run

func (rule SampleRule) Run(ctx context.Context)

Jump to

Keyboard shortcuts

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