在ethermint中通过以太坊的日志监听来获取智能合约的日志,
client, err := ethclient.DialContext(context.Background(), "ws://127.0.0.1:8546")
logs, err := client.FilterLogs(context.Background(), query)
其中query表示过滤的条件 网上都有教程,现在我遇到的问题是,我在生成每个块的时候都需要监听一次 所以 在启动了链后发现只要开始监听,链就一直卡着,链的高度也不会增加
但是要单独的将监听放在main()函数中,在链启动了以后运行go run main.go就可以监听到,这是什么原因