事件订阅¶
开启事件订阅功能¶
使用前,请检查xchain的配置conf/xchain.yaml,确保有如下配置:
1 2 3 4 5 | # 事件订阅相关配置
event:
enable: true
# 每个ip的最大订阅连接数,为0的话不限连接数
addrMaxConn: 5
|
使用命令行订阅事件¶
xchain-cli 的 watch 指令可以用来监听事件,命令行参数的说明如下:
-f, --filter过滤器字段,JSON格式的,字段解释见message BlockFilter--oneline是否将事件打印在一行,方便命令行解析--skip-empty-tx默认watch命令会打印所有的block,即使block里面没有交易,这么做是为了方面做断点记录,--skip-empty-tx参数可以不打印不包含交易的block
如下是一些例子
订阅所有的新块
1 | xchain-cli watch
|
订阅名字为
counter的合约
1 | xchain-cli watch -f '{"contract":"^counter$"}'
|
订阅
counter合约的increase合约事件
1 | xchain-cli watch -f '{"contract":"^counter$", "event_name":"^increase$"}'
|
订阅区块高度从100开始的事件(断点续传)
1 | xchain-cli watch -f '{"range":{"start":"100"}}'
|
订阅区块高度区间为[100, 200)的事件
1 | xchain-cli watch -f '{"range":{"start":"100", "end":"200"}}'
|