我试图弄清楚如何在我的涌入数据库中插入新值时如何发出通知,并使用新插入的测量样本的数据向HTTP端点发送通知。我不确定它是否是Kapacitor的目标(我是TICK堆栈的新手)或者使用其他工具更好(任何建议都会受到欢迎)。
提前致谢。
祝你好运, 阿尔伯特。
答案 0 :(得分:0)
在Kapacitor
中,有两种类型的任务,即batch
和stream
。前者用于处理历史数据,stream
用于实时目的。
根据您的要求,我想很明显stream
是可行的方法,因为它可以让您实时获得来自潮流数据测量的watch
数据。要在TICK脚本中调用端点,您可以使用HttpPostNode
节点。
示例(仅限伪代码):
var data = stream
|from()
.database('myInfluxDB')
.retentionPolicy('autogen')
.measurement('measurement_ABCD')
|window()
.period(10s)
.every(10s)
data
|httpPost('http://your.service.url/api/endpoint_xyz')
在这种情况下,TICK脚本将watch
用于测量的新插入数据measurement_ABCD
,window
周期为10秒,然后对定义的端点执行HTTP POST
整个过程将再次重复every
10秒。
也就是说,你有一个10秒的移动窗口。
参考:
https://docs.influxdata.com/kapacitor/v1.3/nodes/http_post_node/