mirror of https://github.com/ethereum/go-ethereum
eth/tracers: add onlyTopCall option to callTracer (#25430)
This PR allows users to pass in a config object directly to the tracers. Previously only the struct logger was configurable. It also adds an option to the call tracer which if enabled makes it ignore any subcall and collect only information about the top-level call. See #25419 for discussion. The tracers will silently ignore if they are passed a config they don't care about.pull/25506/head
parent
759d795c56
commit
86de2e516e
@ -0,0 +1,72 @@ |
||||
{ |
||||
"context": { |
||||
"difficulty": "3502894804", |
||||
"gasLimit": "4722976", |
||||
"miner": "0x1585936b53834b021f68cc13eeefdec2efc8e724", |
||||
"number": "2289806", |
||||
"timestamp": "1513601314" |
||||
}, |
||||
"genesis": { |
||||
"alloc": { |
||||
"0x0024f658a46fbb89d8ac105e98d7ac7cbbaf27c5": { |
||||
"balance": "0x0", |
||||
"code": "0x", |
||||
"nonce": "22", |
||||
"storage": {} |
||||
}, |
||||
"0x3b873a919aa0512d5a0f09e6dcceaa4a6727fafe": { |
||||
"balance": "0x4d87094125a369d9bd5", |
||||
"code": "0x606060405236156100935763ffffffff60e060020a60003504166311ee8382811461009c57806313af4035146100be5780631f5e8f4c146100ee57806324daddc5146101125780634921a91a1461013b57806363e4bff414610157578063764978f91461017f578063893d20e8146101a1578063ba40aaa1146101cd578063cebc9a82146101f4578063e177246e14610216575b61009a5b5b565b005b34156100a457fe5b6100ac61023d565b60408051918252519081900360200190f35b34156100c657fe5b6100da600160a060020a0360043516610244565b604080519115158252519081900360200190f35b34156100f657fe5b6100da610307565b604080519115158252519081900360200190f35b341561011a57fe5b6100da6004351515610318565b604080519115158252519081900360200190f35b6100da6103d6565b604080519115158252519081900360200190f35b6100da600160a060020a0360043516610420565b604080519115158252519081900360200190f35b341561018757fe5b6100ac61046c565b60408051918252519081900360200190f35b34156101a957fe5b6101b1610473565b60408051600160a060020a039092168252519081900360200190f35b34156101d557fe5b6100da600435610483565b604080519115158252519081900360200190f35b34156101fc57fe5b6100ac61050d565b60408051918252519081900360200190f35b341561021e57fe5b6100da600435610514565b604080519115158252519081900360200190f35b6003545b90565b60006000610250610473565b600160a060020a031633600160a060020a03161415156102705760006000fd5b600160a060020a03831615156102865760006000fd5b50600054600160a060020a0390811690831681146102fb57604051600160a060020a0380851691908316907ffcf23a92150d56e85e3a3d33b357493246e55783095eb6a733eb8439ffc752c890600090a360008054600160a060020a031916600160a060020a03851617905560019150610300565b600091505b5b50919050565b60005460a060020a900460ff165b90565b60006000610324610473565b600160a060020a031633600160a060020a03161415156103445760006000fd5b5060005460a060020a900460ff16801515831515146102fb576000546040805160a060020a90920460ff1615158252841515602083015280517fe6cd46a119083b86efc6884b970bfa30c1708f53ba57b86716f15b2f4551a9539281900390910190a16000805460a060020a60ff02191660a060020a8515150217905560019150610300565b600091505b5b50919050565b60006103e0610307565b801561040557506103ef610473565b600160a060020a031633600160a060020a031614155b156104105760006000fd5b610419336105a0565b90505b5b90565b600061042a610307565b801561044f5750610439610473565b600160a060020a031633600160a060020a031614155b1561045a5760006000fd5b610463826105a0565b90505b5b919050565b6001545b90565b600054600160a060020a03165b90565b6000600061048f610473565b600160a060020a031633600160a060020a03161415156104af5760006000fd5b506001548281146102fb57604080518281526020810185905281517f79a3746dde45672c9e8ab3644b8bb9c399a103da2dc94b56ba09777330a83509929181900390910190a160018381559150610300565b600091505b5b50919050565b6002545b90565b60006000610520610473565b600160a060020a031633600160a060020a03161415156105405760006000fd5b506002548281146102fb57604080518281526020810185905281517ff6991a728965fedd6e927fdf16bdad42d8995970b4b31b8a2bf88767516e2494929181900390910190a1600283905560019150610300565b600091505b5b50919050565b60006000426105ad61023d565b116102fb576105c46105bd61050d565b4201610652565b6105cc61046c565b604051909150600160a060020a038416908290600081818185876187965a03f1925050501561063d57604080518281529051600160a060020a038516917f9bca65ce52fdef8a470977b51f247a2295123a4807dfa9e502edf0d30722da3b919081900360200190a260019150610300565b6102fb42610652565b5b600091505b50919050565b60038190555b505600a165627a7a72305820f3c973c8b7ed1f62000b6701bd5b708469e19d0f1d73fde378a56c07fd0b19090029", |
||||
"nonce": "1", |
||||
"storage": { |
||||
"0x0000000000000000000000000000000000000000000000000000000000000000": "0x000000000000000000000001b436ba50d378d4bbc8660d312a13df6af6e89dfb", |
||||
"0x0000000000000000000000000000000000000000000000000000000000000001": "0x00000000000000000000000000000000000000000000000006f05b59d3b20000", |
||||
"0x0000000000000000000000000000000000000000000000000000000000000002": "0x000000000000000000000000000000000000000000000000000000000000003c", |
||||
"0x0000000000000000000000000000000000000000000000000000000000000003": "0x000000000000000000000000000000000000000000000000000000005a37b834" |
||||
} |
||||
}, |
||||
"0xb436ba50d378d4bbc8660d312a13df6af6e89dfb": { |
||||
"balance": "0x1780d77678137ac1b775", |
||||
"code": "0x", |
||||
"nonce": "29072", |
||||
"storage": {} |
||||
} |
||||
}, |
||||
"config": { |
||||
"byzantiumBlock": 1700000, |
||||
"chainId": 3, |
||||
"daoForkSupport": true, |
||||
"eip150Block": 0, |
||||
"eip150Hash": "0x41941023680923e0fe4d74a34bdac8141f2540e3ae90623718e47d66d1ca4a2d", |
||||
"eip155Block": 10, |
||||
"eip158Block": 10, |
||||
"ethash": {}, |
||||
"homesteadBlock": 0 |
||||
}, |
||||
"difficulty": "3509749784", |
||||
"extraData": "0x4554482e45544846414e532e4f52472d4641313738394444", |
||||
"gasLimit": "4727564", |
||||
"hash": "0x609948ac3bd3c00b7736b933248891d6c901ee28f066241bddb28f4e00a9f440", |
||||
"miner": "0xbbf5029fd710d227630c8b7d338051b8e76d50b3", |
||||
"mixHash": "0xb131e4507c93c7377de00e7c271bf409ec7492767142ff0f45c882f8068c2ada", |
||||
"nonce": "0x4eb12e19c16d43da", |
||||
"number": "2289805", |
||||
"stateRoot": "0xc7f10f352bff82fac3c2999d3085093d12652e19c7fd32591de49dc5d91b4f1f", |
||||
"timestamp": "1513601261", |
||||
"totalDifficulty": "7143276353481064" |
||||
}, |
||||
"input": "0xf88b8271908506fc23ac0083015f90943b873a919aa0512d5a0f09e6dcceaa4a6727fafe80a463e4bff40000000000000000000000000024f658a46fbb89d8ac105e98d7ac7cbbaf27c52aa0bdce0b59e8761854e857fe64015f06dd08a4fbb7624f6094893a79a72e6ad6bea01d9dde033cff7bb235a3163f348a6d7ab8d6b52bc0963a95b91612e40ca766a4", |
||||
"tracerConfig": { |
||||
"onlyTopCall": true |
||||
}, |
||||
"result": { |
||||
"from": "0xb436ba50d378d4bbc8660d312a13df6af6e89dfb", |
||||
"gas": "0x10738", |
||||
"gasUsed": "0x3ef9", |
||||
"input": "0x63e4bff40000000000000000000000000024f658a46fbb89d8ac105e98d7ac7cbbaf27c5", |
||||
"output": "0x0000000000000000000000000000000000000000000000000000000000000001", |
||||
"to": "0x3b873a919aa0512d5a0f09e6dcceaa4a6727fafe", |
||||
"type": "CALL", |
||||
"value": "0x0" |
||||
} |
||||
} |
Loading…
Reference in new issue