Official Go implementation of the Ethereum protocol
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Sina M
064f37d6f6
eth/tracers: live chain tracing with hooks ( #29189 )
...
Here we add a Go API for running tracing plugins within the main block import process.
As an advanced user of geth, you can now create a Go file in eth/tracers/live/, and within
that file register your custom tracer implementation. Then recompile geth and select your tracer
on the command line. Hooks defined in the tracer will run whenever a block is processed.
The hook system is defined in package core/tracing. It uses a struct with callbacks, instead of
requiring an interface, for several reasons:
- We plan to keep this API stable long-term. The core/tracing hook API does not depend on
on deep geth internals.
- There are a lot of hooks, and tracers will only need some of them. Using a struct allows you
to implement only the hooks you want to actually use.
All existing tracers in eth/tracers/native have been rewritten to use the new hook system.
This change breaks compatibility with the vm.EVMLogger interface that we used to have.
If you are a user of vm.EVMLogger, please migrate to core/tracing, and sorry for breaking
your stuff. But we just couldn't have both the old and new tracing APIs coexist in the EVM.
---------
Co-authored-by: Matthieu Vachon <matthieu.o.vachon@gmail.com>
Co-authored-by: Delweng <delweng@gmail.com>
Co-authored-by: Martin HS <martin@swende.se>
8 months ago
..
asm
core/asm: minor code-clarification ( #29293 )
8 months ago
bloombits
core: fix typos ( #28218 )
1 year ago
forkid
params, core/forkid: add mainnet timestamp for Cancun ( #28958 )
9 months ago
rawdb
all: fix typos ( #29288 )
8 months ago
state
eth/tracers: live chain tracing with hooks ( #29189 )
8 months ago
tracing
eth/tracers: live chain tracing with hooks ( #29189 )
8 months ago
txpool
eth/tracers: live chain tracing with hooks ( #29189 )
8 months ago
types
crypto/kz4844: pass blobs by ref ( #29050 )
8 months ago
vm
eth/tracers: live chain tracing with hooks ( #29189 )
8 months ago
.gitignore
Renamed `chain` => `core`
10 years ago
bench_test.go
core: move genesis alloc types to core/types ( #29003 )
9 months ago
block_validator.go
core/types: support for optional blob sidecar in BlobTx ( #27841 )
1 year ago
block_validator_test.go
consensus, cmd, core, eth: remove support for non-merge mode of operation ( #29169 )
8 months ago
blockchain.go
eth/tracers: live chain tracing with hooks ( #29189 )
8 months ago
blockchain_insert.go
consensus, cmd, core, eth: remove support for non-merge mode of operation ( #29169 )
8 months ago
blockchain_reader.go
all: remove the dependency from trie to triedb ( #28824 )
9 months ago
blockchain_repair_test.go
cmd: use package filepath over path for file system operations ( #29227 )
8 months ago
blockchain_sethead_test.go
core: use finalized block as the chain freeze indicator ( #28683 )
8 months ago
blockchain_snapshot_test.go
cmd: use package filepath over path for file system operations ( #29227 )
8 months ago
blockchain_test.go
eth/tracers: live chain tracing with hooks ( #29189 )
8 months ago
blocks.go
core: typos and comments improve
8 years ago
bloom_indexer.go
core: preallocate batch size in bloomIndexer ( #25289 )
2 years ago
chain_indexer.go
core,console: replace noarg fmt.Errorf with errors.New ( #27332 )
1 year ago
chain_indexer_test.go
core: fix potential race in chainIndexerTest ( #22346 )
4 years ago
chain_makers.go
core: refactor consensus interface ( #29283 )
8 months ago
chain_makers_test.go
params: use the same variable name as EIP-4788 ( #29195 )
8 months ago
dao_test.go
all: activate pbss as experimental feature ( #26274 )
1 year ago
error.go
internal/ethapi: handle blobs in API methods ( #28786 )
10 months ago
events.go
eth/filters: remove use of event.TypeMux for pending logs ( #20312 )
5 years ago
evm.go
eth/tracers: live chain tracing with hooks ( #29189 )
8 months ago
forkchoice.go
core: clarify code in forkchoice ( #26257 )
2 years ago
gaspool.go
core, miner: revert block gas counter in case of invalid transaction ( #26799 )
2 years ago
gen_genesis.go
core: move genesis alloc types to core/types ( #29003 )
9 months ago
genesis.go
eth/tracers: live chain tracing with hooks ( #29189 )
8 months ago
genesis_alloc.go
cmd, core, params: add support for the Holesky testnet ( #28007 )
1 year ago
genesis_test.go
core: move genesis alloc types to core/types ( #29003 )
9 months ago
headerchain.go
all: remove ethash pow, only retain shims needed for consensus and tests ( #27178 )
2 years ago
headerchain_test.go
all: remove the dependency from trie to triedb ( #28824 )
9 months ago
mkalloc.go
cmd, core, params: add support for the Holesky testnet ( #28007 )
1 year ago
rlp_test.go
core: move genesis alloc types to core/types ( #29003 )
9 months ago
sender_cacher.go
all: refactor txpool into it's own package in prep for 4844
2 years ago
state_prefetcher.go
core/types, params: add blob transaction type, RLP encoded for now ( #27049 )
2 years ago
state_processor.go
eth/tracers: live chain tracing with hooks ( #29189 )
8 months ago
state_processor_test.go
core: move genesis alloc types to core/types ( #29003 )
9 months ago
state_transition.go
eth/tracers: live chain tracing with hooks ( #29189 )
8 months ago
txindexer.go
core: cache transaction indexing tail in memory ( #28908 )
9 months ago
txindexer_test.go
core: move genesis alloc types to core/types ( #29003 )
9 months ago
types.go
core: use atomic type ( #27011 )
2 years ago