Skip to main content

Event stream structure

Hyperledger Besu events are streamed to brokers in serialized JSON format.

Events are structured as follows:

{
"uuid":"9bd9efec-b0b7-4656-9856-e18750cc5ff5",
"type":"BlockPropagated",
"timestamp":1573563320223,
"event":{...}
}
KeyDescription
uuidID of the event
typeEvent type. Possible types are BlockAdded, BlockPropagated, BlockReorged, TransactionAdded, TransactionDropped, TransactionReverted, or SyncStatusChanged
timestampUnix formatted timestamp of the event
eventDetails of the event type. For more information, see BlockAdded, BlockPropagated, BlockReorged, TransactionAdded, TransactionDropped, TransactionReverted, and SyncStatusChanged

BlockAdded

This event is sent when a block is added to the blockchain.

KeyDescription
hashBlock hash
numberBlock number
nonceBlock PoW nonce challenge. For IBFT 2.0 or Clique, this is the same as the value in the Genesis file
difficultyDifficulty level of this block
gasLimitBlock gas limit
gasUsedTotal gas used for transactions in this block
timestampUnix timestamp of the block creation
coinbaseMiner address
extraDataBlock extra data added by the miner or validator (Clique or IBFT 2.0)
logsBloomLog bloom filter
mixHashBlock Proof of Work (PoW) mix hash. For IBFT 2.0 or Clique, this is the same as the value in the Genesis file
ommersHashBlock uncles' hashes
parentHashParent block's hash
receiptsRootBlock receipt root hash
transactionsRootBlock transaction root hash
stateRootBlock state root hash

BlockPropagated

This event is sent when a block is created.

KeyDescription
hashBlock hash
numberBlock number
nonceBlock PoW nonce challenge. For IBFT 2.0 or Clique, this is the same as the value in the Genesis file
difficultyDifficulty level of this block
totalDifficultyTotal difficulty of the chain until this block
gasLimitBlock gas limit
gasUsedTotal gas used for transactions in this block
timestampUnix timestamp of the block creation
coinbaseMiner address
extraDataBlock extra data added by the miner or validator (Clique or IBFT 2.0)
logsBloomLog bloom filter
mixHashBlock Proof of Work (PoW) mix hash. For IBFT 2.0 or Clique, this is the same as the value in the Genesis file
ommersHashBlock uncle's hashes
parentHashParent block's hash
receiptsRootBlock receipt root hash
transactionsRootBlock transaction root hash
stateRootBlock state root hash

BlockReorged

This event is sent when a block is removed by a chain reorganization.

KeyDescription
hashBlock hash
numberBlock number
nonceBlock PoW nonce challenge. For IBFT 2.0 or Clique, this is the same as the value in the Genesis file
difficultyDifficulty level of this block
gasLimitBlock gas limit
gasUsedTotal gas used for transactions in this block
timestampUnix timestamp of the block creation
coinbaseMiner address
extraDataBlock extra data added by the miner or validator (Clique or IBFT 2.0)
logsBloomLog bloom filter
mixHashBlock Proof of Work (PoW) mix hash. For IBFT 2.0 or Clique, this is the same as the value in the Genesis file
ommersHashBlock uncles' hashes
parentHashParent block's hash
receiptsRootBlock receipt root hash
transactionsRootBlock transaction root hash
stateRootBlock state root hash

TransactionAdded

This event is sent when a transaction is added to the transaction pool.

KeyDescription
nonceNumber of transactions sent by the sender
gasPriceGas price for the transaction, in Wei
gasAmount of gas used for the transaction
valueEther value transferred, in Wei
v, r, and sTransaction signature components
fromTransaction sender address
inputTransaction payload
hashTransaction hash
toTransaction recipient (if present)
chainIdID of the chain on which the transaction should be executed

TransactionDropped

This event is sent when a transaction is dropped from the transaction pool.

KeyDescription
nonceNumber of transactions sent by the sender
gasPriceGas price for the transaction, in Wei
gasAmount of gas used for the transaction
valueEther value transferred, in Wei
v, r, and sTransaction signature components
fromTransaction sender address
inputTransaction payload
hashTransaction hash
toTransaction recipient (if present)
chainIdID of the chain on which the transaction should be executed

TransactionReverted

This event is sent for each reverted transaction that contains a revert reason when adding a block to the blockchain.

KeyDescription
blockHashBlock hash
blockNumberBlock number
transactionHashTransaction hash
revertReasonRevert reason

SyncStatusChanged

This event is indicates the synchronization progress.

KeyDescription
startingBlockBlock number when starting the synchronization process
currentBlockCurrent block number during the synchronization process
highestBlockHighest known block number of the chain