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换行

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

相关推荐
.select.2 小时前
TCP 5(socket编程)
服务器·网络·tcp/ip
风曦Kisaki2 小时前
Linux服务Day03:自定义YUM仓库、网络YUM仓库(HTTP/FTP)、MariaDB数据库基础操作
linux·网络·数据库
智擎软件测评小祺3 小时前
渗透测试报告撰写:漏洞发现到验证流程
网络·渗透测试·测试·cma·第三方检测·cnas·渗透测试报告
攻城狮在此3 小时前
华三交换机端口隔离配置(VLAN内二层互访隔离)
网络·安全
z10_143 小时前
享住宅IP、长效代理ip是什么?有什么用?
网络·网络协议·tcp/ip
振浩微433射频芯片3 小时前
433MHz在智能家居中的应用大全(一):智能窗帘篇——为什么稳定比花哨更重要?
网络·单片机·嵌入式硬件·物联网·智能家居
翻斗包菜3 小时前
Python 网络编程从入门到精通:TCP/UDP/Socket 实战详解
网络·python·tcp/ip
明德扬3 小时前
AD9653调试笔记
网络
攻城狮7号3 小时前
面向未来的时序数据库选型指南:当数据存储遇上原生AI
数据库·人工智能·时序数据库·apache iotdb