Kapacitor时间序列数据监控框架
Kapacitor 是一个开源框架,用来处理、监控和警告时间序列数据。Kapacitor 使用 TICKscript 脚本来定义任务,示例代码:
stream
.from().measurement('cpu_usage_idle')
.groupBy('host')
.window()
.period(1m)
.every(1m)
.mapReduce(influxql.mean('value'))
.eval(lambda: 100.0 - "mean")
.as('used')
.alert()
.message('{{ .Level}}: {{ .Name }}/{{ index .Tags "host" }} has high cpu usage: {{ index .Fields "used" }}')
.warn(lambda: "used" > 70.0)
.crit(lambda: "used" > 85.0)
// Send alert to hander of choice.
// Slack
.slack()
.channel('#alerts')
// VictorOps
.victorOps()
.routingKey('team_rocket')
// PagerDuty
.pagerDuty()
执行方法:
# Define the task (assumes cpu data is in db 'telegraf')kapacitor define \ -name cpu_alert \ -type stream \ -dbrp telegraf.default \ -tick ./cpu_alert.tick# Start the taskkapacitor enable cpu_alert
评论
