Interface BlockAwareOperationTracer
- All Superinterfaces:
org.hyperledger.besu.evm.tracing.OperationTracer
public interface BlockAwareOperationTracer
extends org.hyperledger.besu.evm.tracing.OperationTracer
An extended operation tracer that can trace the start and end of a block.
In both methods, the block header and body are provided.
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final BlockAwareOperationTracerBlockAwareOperationTracer object with no tracing functionality. -
Method Summary
Modifier and TypeMethodDescriptiondefault booleandefault voidtraceEndBlock(BlockHeader blockHeader, BlockBody blockBody) Trace the end of a block.default voidtraceStartBlock(org.hyperledger.besu.evm.worldstate.WorldView worldView, BlockHeader blockHeader, BlockBody blockBody, org.hyperledger.besu.datatypes.Address miningBeneficiary) Trace the start of a block.default voidtraceStartBlock(org.hyperledger.besu.evm.worldstate.WorldView worldView, ProcessableBlockHeader processableBlockHeader, org.hyperledger.besu.datatypes.Address miningBeneficiary) When building a block this API is called at the start of the processMethods inherited from interface org.hyperledger.besu.evm.tracing.OperationTracer
getTraceFrames, isEnabled, traceAccountCreationResult, traceBeforeRewardTransaction, traceContextEnter, traceContextExit, traceContextReEnter, traceEndTransaction, tracePostExecution, tracePrecompileCall, tracePreExecution, tracePrepareTransaction, traceStartTransaction
-
Field Details
-
NO_TRACING
BlockAwareOperationTracer object with no tracing functionality. This serves as a default for scenarios where no specific tracing operation is required.
-
-
Method Details
-
traceStartBlock
default void traceStartBlock(org.hyperledger.besu.evm.worldstate.WorldView worldView, BlockHeader blockHeader, BlockBody blockBody, org.hyperledger.besu.datatypes.Address miningBeneficiary) Trace the start of a block.- Parameters:
worldView- the world view at the start of the blockblockHeader- the header of the block which is tracedblockBody- the body of the block which is tracedminingBeneficiary- the address of miner building the block
-
traceEndBlock
Trace the end of a block.- Parameters:
blockHeader- the header of the block which is tracedblockBody- the body of the block which is traced
-
traceStartBlock
default void traceStartBlock(org.hyperledger.besu.evm.worldstate.WorldView worldView, ProcessableBlockHeader processableBlockHeader, org.hyperledger.besu.datatypes.Address miningBeneficiary) When building a block this API is called at the start of the process- Parameters:
worldView- the world view at the start of the blockprocessableBlockHeader- the processable headerminingBeneficiary- the address of miner building the block
-
isExtendedTracing
default boolean isExtendedTracing()- Specified by:
isExtendedTracingin interfaceorg.hyperledger.besu.evm.tracing.OperationTracer
-