我有一个influxdb,可以插入它:
INSERT XXX_Pbatt_live,gateway=UTXce9ef5 value=102
在单独的Kapacitor服务器上,我有一个TICKScript:
dbrp "hems"."autogen"
stream
|from()
.measurement('XXX_Pbatt_live')
.log('/tmp/alerts.log')
|httpPost('http://127.0.0.1:3000')
在同一台Kapacitor服务器上,我有一个nodejs脚本“ testsocket.js”(只是为了测试是否发生了数据发布):
const http = require('http');
const server = http.createServer((req, res) => {
if (req.method === 'POST') {
console.log('POST');
}
else {
console.log('NOT POST');
}
});
server.listen(3000);
但是,我的问题是我认为httpPost方法从不发送数据。例如,我尝试使用“ wget http://127.0.0.1:3000”来测试连接,并且它以为可能是网络问题而起作用。我尝试使用post()和post()。endpoint('...')。 log命令有效,我想我可以看到它位于kapacitor服务器上(不是100%可以肯定,因为日志缺少足够的详细信息)。我完成了任务的“重新加载”,以为它可能没有刷新脚本。
我测试的方式是:
我在Influxdb服务器上设置了一个订阅,我知道那边正在工作,因为该数据正在记录在“ /tmp/alerts.log”日志文件中。
我是在遗漏一些基本知识还是在遗漏某些东西。非常感谢任何帮助或指针!