我想知道在tickscript开发期间,是否有机会在通过处理节点之后转储流状态(登录到文件,stdout)?
答案 0 :(得分:5)
我发现将|httpOut('id')
用于调试目的很有用。稍后您可以访问http://kapacitor-host:9092/kapacitor/v1/tasks/<task_id>/<httpOut_id>
并查看通过该节点传递的数据。
答案 1 :(得分:2)
运行var isInvalid = hasDuplicateRecord(grid.store, 'time');
命令应该向您显示有关任务本身的一些信息,但在kapacitor show TASK_NAME
部分下面有graph description,其中包含有关已到达哪个节点的数据点的统计信息。
另一种调试方法是使用InfluxDBOutNode
存储积分并查看正在处理的内容。希望这会有所帮助。
答案 2 :(得分:2)
Kapacitor有一个Log Node,允许您将流状态转储到Kapacitor日志文件。
在使用中,它看起来如下所示:
stream.from()...
|window()
.period(10s)
.every(10s)
|log()
|count('value')
答案 3 :(得分:0)
我能够将tick脚本中的数据转储到单独的数据库中......
stream
|from()
.database('telegraf')
.measurement('cpu')
.groupBy(*)
.where(lambda: "cpu" == 'cpu-total')
|eval( lambda: 100.0 - "usage_idle" )
.as('usage_util')
.keep()
.quiet()
|InfluxDBOut()
.create()
.database('debugging')
然后我使用Chronograf资源管理器查看结果......