DCS如何通过KepServerEx向InfluxDB写数据

1、创建Agent

右键 IotGateway -》点击 New Agent

2、为agent定义名字

Type 选择 REST Client

3、配置influxdb地址

复制代码
http://127.0.0.1:8086/api/v2/write?org=hua_heng&bucket=chang_feng&precision=ms

4、添加请求头

复制代码
Content-Type: text/plain; charset=utf-8
Authorization: Token q57rRF3q7cYHPBj_19eoNgBhHyfKTttHJPZ9lzgCIuGekfIeG9f7AjXav_RyWnYYReNNZXJFJa5AznBLO3CzSw==

5、修改报送数据的模板格式

双击刚刚创建好的agent -》选择Message -》选择高级模板 -》点击蓝色模板文字 -》进行修改

根据帮助文档填写模板内容

注意:InfluxDB 的接口数据采用的 Line Protocol(行协议) 严格要求每行以 \n结尾 ,不支持 \r\n

\n(换行符,十六进制 0A)​ 而不是 \r\n(回车+换行,十六进制 0D 0A)

模板中一定不要随意换行,否则发送的文本内容会携带\r\n,导致接口报错

复制代码
|#each VALUES|  dcs_data,tag=|TAG| value=|VALUE| |TIMESTAMP| |LINEFEED| |/each|

|-----------------------------------|
| |LINEFEED| 是用来给多个点位数据之间加 \n 用的 |

日志

如果有换行导致报错,kepsever会打印出错误日志

正确日志是这样的

6、获取IotGateway的临时测试权限

重启 KEPServerEX 6.13 Runtime 服务

重启后会获得两个小时的临时权限

7、wireshark捕获并分析http请求异常问题

由于kepserver模板组装的点位数据最终发送给接口的数据不知到长什么样子,当日志中出现异常请求日志的时候,并不知道问题出在哪里,可以通过wireshark捕获请求,查看请求的具体信息和响应信息

下载地址

https://www.wireshark.org/download.html

过滤请求

复制代码
xxx.xxx.xxx.xxx 替换成 influxdb 服务的ip
http.request.method == "POST" and ip.addr == xxx.xxx.xxx.xxx

查看请求体信息

正常的请求是符合influxdb的行协议的,以\n换行

异常的请求可以过滤请求响应数据,查看接口异常的原因,异常的情况忘了截图,有点晚了,不想重新再操作一遍了,回家吃饭喽

相关推荐
虎头金猫4 天前
4K 视频总卡在公网带宽?用 N1 + OpenList 把网盘播放链路重新理顺
运维·服务器·网络·python·容器·beautifulsoup·pandas
wuyk5554 天前
《WiFi 嵌入式物联网开发全套实战》| 第 16 章 ESP32 AP+STA 双模共存原理与工程坑点
网络·stm32·物联网
QYRdata4 天前
年均增速24.2%!机器人数据湖未来六年增长动能强劲
网络·机器人·服务发现
CHENKONG_CK4 天前
破解制鞋打磨痛点:RFID赋能去毛刺工序自动化升级
网络·单片机·嵌入式硬件·网络协议·tcp/ip
chshang19924 天前
工业路由器是什么?浅谈5G工业网络中的IR602
网络·物联网·5g·智能路由器
萧瑟余晖4 天前
Netty 核心组件与 Reactor 模型详解
网络·架构
ITxiaobing20234 天前
IP 定位服务选型指南:从准确率到工程落地的技术考察
linux·服务器·网络
wuyk5554 天前
【Socket 进阶之路】第 9 章 Linux 网络服务量产稳定性优化|心跳保活、TIME_WAIT、SO_LINGER、内存池、断线重连、完整异常防护框架
linux·服务器·开发语言·网络·物联网
z落落4 天前
C#UDP+串口服务端+UDP 客户端(含 CRC16 校验)
网络·网络协议·udp
云运维笔记4 天前
华为设备IP地址配置全攻略
运维·网络·计算机网络·华为