SensorBee API客户端
sensorbee-python的Python项目详细描述
SensorBeePython
这是一个用于SensorBeerest/websocket api的python客户端库。 此库还提供实用程序命令(sbstat和sbpeek),可用于检查sensorbee拓扑。
安装
pip install sensorbee-python
要使用websocket客户端api,还需要安装websocket-client:
pip install websocket-client
要求
- Python2.7、3.3、3.4、3.5或3.6。
使用量
python api
在大多数情况下,您只需要使用pysensorbee.api.SensorBeeAPI类。 下面是一个示例:
frompysensorbeeimportSensorBeeAPIapi=SensorBeeAPI('127.0.0.1',15601)api.create_topology('test')api.query('test','CREATE SOURCE ns TYPE node_statuses;')forrinapi.query('test','SELECT RSTREAM * FROM ns [RANGE 1 TUPLES];'):print(r)
有关详细信息,请参见pydoc pysensorbee.api。
命令
sbstat提供了拓扑状态的简要摘要。
$ sbstat -H 127.0.0.1 -P 15601 -t test Node Status Received Error Output Sent Queued Dropped -> node_stats running (total) 5381 0 sensorbee_tmp_8 5381 0 (0.0%) :: sensorbee_tmp_8 running 5381 0 (total) 5381 0 sensorbee_tmp_select_sink_7 5381 0 (0.0%) <- sensorbee_tmp_select_sink_7 running 5381 0
源、流和汇分别用->、::和<-表示。
sbpeek可用于查看当前通过指定源或流运行的元组。
$ sbpeek -H 127.0.0.1 -P 15601 -t test -1 node_stats {"behaviors": {"remove_on_stop": false, "stop_on_disconnect": false}, "node_type": "source", "output_stats": {"num_sent_total": 5893, "outputs": {"sensorbee_tmp_58": {"queue_size": 1024, "num_sent": 0, "num_queued": 0}, "sensorbee_tmp_8": {"queue_size": 1024, "num_sent": 5893, "num_queued": 0}}, "num_dropped": 0}, "state": "running", "node_name": "node_stats"}
有关详细信息,请参见sbstat --help和sbpeek --help。
注意
- 这个图书馆不是官方sensorbee项目的一部分。
- 除了API Specification Version 1中记录的api之外,这个库还支持一些未记录的api,包括websocketapi。
- 这个项目是beepy的后续项目。
许可证
麻省理工学院许可证