SODBASE应用示例:通过Restful接口采集数据
来源:互联网 发布:梅雨知时节作品 编辑:程序博客网 时间:2024/06/06 03:34
开发者社区活动,使用SODBASE产品的程序员现在可以领礼品啦
功能:监测某些进程是否在运行
1.建立数据采集脚本
vi monitor.sh
t=`ps aux | grep myprogram | wc -l`curl -d "username=admin&password=cep&modelspacename=firstuser&streamname=monitor.input&data=appnum:${t},machine:16&datatypes=integer,string" http://192.168.1.10:16111/sodbase-cep-server-webservice-1.0.1/insertevent
其中的192.168.1.10换成自己CEP Server的IP地址
加入crontab
crontab -e*/2 * * * * nohup sh /home/user/monitor.sh
2. CEP模型
可以用Studio建模,就一个级联输入,一个Filter,一个打印输出。
vi monitor.xml
<?xml version="1.0" encoding="UTF-8" standalone="yes"?><GraphModelData> <CEPSoftwareVersion>2</CEPSoftwareVersion> <inputAdaptors> <inputAdaptorClassName>com.sodbase.inputadaptor.StubInputAdaptor</inputAdaptorClassName> <adaptorParams>monitor.input</adaptorParams> <isExternal>false</isExternal> </inputAdaptors> <SODSQLs>CREATE QUERY monitor SELECT * FROM T1:monitor.input PATTERN T1 WITHIN 0 </SODSQLs> <outputAdaptors> <isOutputAsSelection>true</isOutputAsSelection> <outputAdaptorClassName>com.sodbase.outputadaptor.PrintEventOutputAdaptor</outputAdaptorClassName> <adaptorParams>false</adaptorParams> <adaptorParams>true</adaptorParams> <isExternal>false</isExternal> <queryName>monitor</queryName> </outputAdaptors> <modelName>monitor</modelName> <modelVersion>1.0</modelVersion> <modelDescription></modelDescription></GraphModelData>
在SODBASE CEP Admin的bin目录下
运行命令
./xmltosoddata.sh -i monitor.xml -o monitor.soddata也可以在Studio中建模
安装运行CEP模型,用firstuser用户
./installmodel.sh -h 192.168.1.10 -P 16111 -f "monitor.soddata" -u firstuser -p cep ./startmodel.sh -h 192.168.1.10 -P 16111 -m monitor -v 1.0 -u firstuser -p cep
3.稍复杂的多行数据采集
wc命令就输出一行数据,向ls的命令会输出多行数据,有个简单的方法,处理如下
vi monitor.sh
ls -l | awk '{print "curl -d\"username=admin&password=cep&modelspacename=firstuser&streamname=monitor.input&data=filename:"$1",machine:16,command:ls&datatypes=string,string,string\" http://192.168.1.10:16111/sodbase-cep-server-webservice-1.0.1/insertevent"}'> /home/user/event.shsh /home/user/event.sh
ls -l | awk '{print "curl -d \"username=admin&password=cep&modelspacename=firstuser&streamname=monitor.input&data={\\\"d1\\\":\\\""$0"\\\",\\\"machine\\\":\\\"16\\\",\\\"command\\\":\\\"ls\\\"}\" http://192.168.1.10:16111/sodbase-cep-server-webservice-1.0.1/insertEventJson"}' >/home/user/event.shsh /home/user/event.sh
当然,大量数据的传输还是建议网络直连编程实现。
0 0
- SODBASE应用示例:通过Restful接口采集数据
- springmvc创建restful接口通过HttpURLConnection创建连接传递数据
- springmvc创建restful接口通过HttpURLConnection创建连接传递数据
- 数据采集接口设计
- 应用数据采集
- 通过rul读取流数据此条适用于 webservice-restful 执行接口
- 数据库应用开发周期各个阶段采集的数据和产生的文档示例
- 数据接口示例
- CURL使用示例之数据采集
- python网络数据采集学习范例-通过互联网采集
- SODBASE CEP学习进阶篇(二):日志采集-Flume
- STM32通过SPI采集DT50 ADS8320数据
- 通过采集的激光数据构建地图
- 数据采集接口OPC SERVER For UN2000
- 数据采集接口OPC SERVER For SunyPCC500E
- magento 数据批量采集 发布接口
- fildReader接口的示例应用
- SODBASE数据输出适配器----HTTP请求
- POJ-2676 Sudoku(DFS)
- 编程练习
- SQLServer多行多列数据转为一行
- 【杭电oj1166】敌兵布阵
- 素数筛选与最大质因子
- SODBASE应用示例:通过Restful接口采集数据
- Centos 7 安装HADOOP 2.6.0
- word 常规模板设置
- 区分操作系统的一些宏
- 我的servlet学习过程(三):Servlet
- 谱聚类
- HDU 2648 Shopping
- 前端学习总结(十九)Redux——管理state数据最优雅的解决方案
- 没有目标,永远也找不到人生方向