Documentation ¶
Index ¶
- Variables
- func IsBlockEq(a, b *types.Block) bool
- type Block
- type Blocks
- func (blocks Blocks) Copy() Blocks
- func (blocks Blocks) EventExists(block *types.Block, event Event) bool
- func (blocks Blocks) FindBlock(hash common.Hash, optEvent ...Event) (*Block, bool)
- func (b Blocks) Head() *Block
- func (b Blocks) IsOK() bool
- func (b Blocks) LatestBlock() *Block
- func (b Blocks) Reorg() bool
- func (b Blocks) Tail() *Block
- type Chain
- func (c *Chain) Blocks() Blocks
- func (c *Chain) GetAverageBlockTime() float64
- func (c *Chain) GetBlock(hash common.Hash) *Block
- func (c *Chain) GetBlockByNumber(blockNum uint64, event Event) *Block
- func (c *Chain) GetTransaction(txnHash common.Hash, optMined ...bool) *types.Transaction
- func (c *Chain) Head() *Block
- func (c *Chain) PrintAllBlocks()
- func (c *Chain) Tail() *Block
- type Event
- type Monitor
- func (m *Monitor) Chain() *Chain
- func (m *Monitor) GetAverageBlockTime() float64
- func (m *Monitor) GetBlock(blockHash common.Hash) *Block
- func (m *Monitor) GetTransaction(txnHash common.Hash, optMined ...bool) *types.Transaction
- func (m *Monitor) IsRunning() bool
- func (m *Monitor) LatestBlock() *Block
- func (m *Monitor) LatestBlockNum() *big.Int
- func (m *Monitor) OldestBlockNum() *big.Int
- func (m *Monitor) Options() Options
- func (m *Monitor) Provider() *ethrpc.Provider
- func (m *Monitor) PurgeHistory()
- func (m *Monitor) Run(ctx context.Context) error
- func (m *Monitor) Stop()
- func (m *Monitor) Subscribe() Subscription
- type Options
- type Subscription
Constants ¶
This section is empty.
Variables ¶
View Source
var ( ErrFatal = errors.New("ethmonitor: fatal error, stopping") ErrReorg = errors.New("ethmonitor: block reorg") ErrUnexpectedParentHash = errors.New("ethmonitor: unexpected parent hash") ErrUnexpectedBlockNumber = errors.New("ethmonitor: unexpected block number") ErrQueueFull = errors.New("ethmonitor: publish queue is full") ErrMaxAttempts = errors.New("ethmonitor: max attempts hit") )
View Source
var DefaultOptions = Options{ Logger: logger.NewLogger(logger.LogLevel_WARN), PollingInterval: 1000 * time.Millisecond, Timeout: 20 * time.Second, StartBlockNumber: nil, TrailNumBlocksBehindHead: 0, BlockRetentionLimit: 200, WithLogs: false, LogTopics: []common.Hash{}, DebugLogging: false, }
Functions ¶
Types ¶
type Blocks ¶
type Blocks []*Block
func (Blocks) EventExists ¶ added in v1.3.0
func (Blocks) LatestBlock ¶
type Chain ¶
type Chain struct {
// contains filtered or unexported fields
}
func (*Chain) GetAverageBlockTime ¶ added in v1.14.2
func (*Chain) GetBlockByNumber ¶ added in v1.3.2
func (*Chain) GetTransaction ¶
func (*Chain) PrintAllBlocks ¶
func (c *Chain) PrintAllBlocks()
type Monitor ¶
type Monitor struct {
// contains filtered or unexported fields
}
func (*Monitor) GetAverageBlockTime ¶ added in v1.14.2
GetAverageBlockTime returns the average block time in seconds (including fractions)
func (*Monitor) GetTransaction ¶
GetBlock will search within the retained blocks for the txn hash. Passing `optMined true` will only return transaction which have not been removed from the chain via a reorg.
func (*Monitor) LatestBlock ¶
LatestBlock will return the head block of the retained chain
func (*Monitor) LatestBlockNum ¶ added in v1.17.0
func (*Monitor) OldestBlockNum ¶ added in v1.17.0
func (*Monitor) PurgeHistory ¶ added in v1.17.0
func (m *Monitor) PurgeHistory()
PurgeHistory clears all but the head of the chain. Useful for tests, but should almost never be used in a normal application.
func (*Monitor) Subscribe ¶
func (m *Monitor) Subscribe() Subscription
type Subscription ¶
type Subscription interface { Blocks() <-chan Blocks Done() <-chan struct{} Unsubscribe() }
Click to show internal directories.
Click to hide internal directories.