嗨,我使用以下命令在InfluxDB
中创建了一个订阅(InfluxDB
):
CREATE SUBSCRIPTION "test-data-update" ON "system_managment"."system_managment2d" DESTINATIONS ALL 'http://localhost:9001/ts/data-update'
在运行在端口上的ExpressJs
应用程序中,9001
添加了一条路由如下:
app.post("/ts/data-update/write", (req, res) => {
console.log(">>influx data>>");
console.log(req.body);
res.sendStatus(200);
});
我以为我会在req.body
中得到所有的数据,但是我的身体里什么都没有。如何通过进水数据库文件中提到的订阅获取数据。
我已经看到了更多使用
Kapacitor
的例子,但到目前为止,我们还没有计划使用Kapacitor
。
让我知道如何从InfluxDB
订阅端点获取更新的数据?或者它应该是这样的,并且我们从这个端点对InfluxDB
进行了正常的查询以获取数据?
发布于 2021-04-03 14:18:58
同样的问题,解决方案是使用request对象侦听数据事件。
app.post("/ts/data-update/write",(req, res) => {
logger.info('influx data>>');
logger.info(req.headers);
logger.info(req.body);
req.on('data', (chunk) => {
console.log(chunk.toString());
});
req.on('end', () => {
res.sendStatus(200);
});
});
netcat
收听,该端口承载一个TCP服务器,并在最后具有内容。https://stackoverflow.com/questions/62534266
复制