2
我有一些測試可以與pyethereum創建合同,並與他們做各種事情,但我對如何獲取關於他們登錄的事件的信息感到困惑。如何從pyethereum獲取事件日誌信息?
一個簡單的例子:
from ethereum import tester as t
s = t.state()
code = """contract LogTest {
event LogMyNumber(uint);
function LogTest() {
}
function logSomething() {
LogMyNumber(4);
}
}"""
logtest = t.state().abi_contract(code, language='solidity', sender=t.k0)
logtest.logSomething()
#number_i_logged = WHAT DO I DO HERE?
#print "You logged the number %d" % (number_i_logged)
我跑這一點,得到:
No handlers could be found for logger "eth.pow"
{'': 4, '_event_type': 'LogMyNumber'}
這是天色印製的json是我想要的信息,但有人可以解釋或指向我一個例子,我如何捕獲它並將其加載到python中的變量中,以便我可以檢查它並對它做些什麼?似乎有一種叫做log_listener的東西,你可以將它傳遞給abi_contract,看起來像是相關的,但我無法弄清楚如何處理它。
謝謝,是有道理的,我給它一個去。 –
工作得很好,正好趕上我需要再次這樣做。再次感謝。 –
太好了,很高興它有幫助。 – 4gn3s