metrics

package
v0.13.1-patch.6 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 31, 2021 License: AGPL-3.0 Imports: 18 Imported by: 50

Documentation

Index

Constants

View Source
const (
	HotstuffEventTypeTimeout    = "timeout"
	HotstuffEventTypeOnProposal = "onproposal"
	HotstuffEventTypeOnVote     = "onvote"
)

HotStuff Metrics

View Source
const (
	LabelChannel  = "topic"
	LabelChain    = "chain"
	EngineLabel   = "engine"
	LabelResource = "resource"
	LabelMessage  = "message"
	LabelNodeID   = "nodeid"
	LabelNodeRole = "noderole"
	LabelNodeInfo = "nodeinfo"
	LabelPriority = "priority"
)
View Source
const (
	// collection
	EngineProposal               = "proposal"
	EngineCollectionIngest       = "collection_ingest"
	EngineCollectionProvider     = "collection_provider"
	EngineClusterSynchronization = "cluster-sync"
	// consensus
	EnginePropagation        = "propagation"
	EngineCompliance         = "compliance"
	EngineConsensusProvider  = "consensus_provider"
	EngineConsensusIngestion = "consensus_ingestion"
	EngineMatching           = "matching"
	EngineSynchronization    = "sync"
	// common
	EngineFollower = "follower"
)
View Source
const (
	ResourceUndefined                = "undefined"
	ResourceProposal                 = "proposal"
	ResourceHeader                   = "header"
	ResourceFinalizedHeight          = "finalized_height"
	ResourceIndex                    = "index"
	ResourceIdentity                 = "identity"
	ResourceGuarantee                = "guarantee"
	ResourceResult                   = "result"
	ResourceReceipt                  = "receipt"
	ResourceCollection               = "collection"
	ResourceApproval                 = "approval"
	ResourceSeal                     = "seal"
	ResourceCommit                   = "commit"
	ResourceTransaction              = "transaction"
	ResourceClusterPayload           = "cluster_payload"
	ResourceClusterProposal          = "cluster_proposal"
	ResourceProcessedResultID        = "processed_result_ids"         // verification node, finder engine
	ResourcePendingReceipt           = "pending_receipt"              // verification node, finder engine
	ResourceReceiptIDsByResult       = "receipt_ids_by_result"        // verification node, finder engine
	ResourcePendingReceiptIDsByBlock = "pending_receipt_ids_by_block" // verification node, finder engine
	ResourcePendingResult            = "pending_result"               // verification node, match engine
	ResourceChunkIDsByResult         = "chunk_ids_by_result"          // verification node, match engine
	ResourcePendingChunk             = "pending_chunk"                // verification node, match engine
	ResourcePendingBlock             = "pending_block"                // verification node, match engine
	ResourceCachedReceipt            = "cached_receipt"               // verification node, finder engine
	ResourceCachedBlockID            = "cached_block_id"              // verification node, finder engine
	ResourceEpochSetup               = "epoch_setup"
	ResourceEpochCommit              = "epoch_commit"
	ResourceEpochStatus              = "epoch_status"
)
View Source
const (
	MessageCollectionGuarantee  = "guarantee"
	MessageBlockProposal        = "proposal"
	MessageBlockVote            = "vote"
	MessageExecutionReceipt     = "receipt"
	MessageResultApproval       = "approval"
	MessageSyncRequest          = "ping"
	MessageSyncResponse         = "pong"
	MessageRangeRequest         = "range"
	MessageBatchRequest         = "batch"
	MessageBlockResponse        = "block"
	MessageSyncedBlock          = "synced_block"
	MessageClusterBlockProposal = "cluster_proposal"
	MessageClusterBlockVote     = "cluster_vote"
	MessageClusterBlockResponse = "cluster_block_response"
	MessageSyncedClusterBlock   = "synced_cluster_block"
	MessageTransaction          = "transaction"
	MessageSubmitGuarantee      = "submit_guarantee"
	MessageCollectionRequest    = "collection_request"
	MessageCollectionResponse   = "collection_response"
	MessageEntityRequest        = "entity_request"
	MessageEntityResponse       = "entity_response"
)
View Source
const (
	KiB = 1 << (10 * iota)
	MiB
	GiB
)
View Source
const (
	ChannelOneToOne = "OneToOne"
)

Variables

This section is empty.

Functions

func RegisterBadgerMetrics

func RegisterBadgerMetrics()

Types

type CacheCollector

type CacheCollector struct {
	// contains filtered or unexported fields
}

func NewCacheCollector

func NewCacheCollector(chain flow.ChainID) *CacheCollector

func (*CacheCollector) CacheEntries

func (cc *CacheCollector) CacheEntries(resource string, entries uint)

CacheEntries records the size of the node identities cache.

func (*CacheCollector) CacheHit

func (cc *CacheCollector) CacheHit(resource string)

CacheHit records the number of hits in the node identities cache.

func (*CacheCollector) CacheMiss

func (cc *CacheCollector) CacheMiss(resource string)

CacheMiss records the number of misses in the node identities cache.

type CleanerCollector

type CleanerCollector struct {
	// contains filtered or unexported fields
}

func NewCleanerCollector

func NewCleanerCollector() *CleanerCollector

func (*CleanerCollector) RanGC

func (cc *CleanerCollector) RanGC(duration time.Duration)

RanGC records a successful run of the Badger garbage collector.

type CollectionCollector

type CollectionCollector struct {
	// contains filtered or unexported fields
}

func NewCollectionCollector

func NewCollectionCollector(tracer *trace.OpenTracer) *CollectionCollector

func (*CollectionCollector) ClusterBlockFinalized

func (cc *CollectionCollector) ClusterBlockFinalized(block *cluster.Block)

ClusterBlockFinalized updates the guaranteed collection size gauge and finishes the tx->collection span for each constituent transaction.

func (*CollectionCollector) ClusterBlockProposed

func (cc *CollectionCollector) ClusterBlockProposed(block *cluster.Block)

ClusterBlockProposed tracks the size and number of proposals, as well as starting the collection->guarantee span.

func (*CollectionCollector) TransactionIngested

func (cc *CollectionCollector) TransactionIngested(txID flow.Identifier)

TransactionIngested starts a span to trace the duration of a transaction from being created to being included as part of a collection.

type ComplianceCollector

type ComplianceCollector struct {
	// contains filtered or unexported fields
}

func NewComplianceCollector

func NewComplianceCollector() *ComplianceCollector

func (*ComplianceCollector) BlockFinalized

func (cc *ComplianceCollector) BlockFinalized(block *flow.Block)

BlockFinalized reports metrics about finalized blocks.

func (*ComplianceCollector) BlockSealed

func (cc *ComplianceCollector) BlockSealed(block *flow.Block)

BlockSealed reports metrics about sealed blocks.

func (*ComplianceCollector) FinalizedHeight

func (cc *ComplianceCollector) FinalizedHeight(height uint64)

FinalizedHeight sets the finalized height.

func (*ComplianceCollector) SealedHeight

func (cc *ComplianceCollector) SealedHeight(height uint64)

SealedHeight sets the finalized height.

type ConsensusCollector

type ConsensusCollector struct {
	// contains filtered or unexported fields
}

ConsensusCollector ...

func NewConsensusCollector

func NewConsensusCollector(tracer *trace.OpenTracer, registerer prometheus.Registerer) *ConsensusCollector

NewConsensusCollector created a new consensus collector

func (*ConsensusCollector) CheckSealingDuration added in v0.11.0

func (cc *ConsensusCollector) CheckSealingDuration(duration time.Duration)

CheckSealingDuration records absolute time for the full sealing check by the consensus match engine

func (*ConsensusCollector) FinishBlockToSeal

func (cc *ConsensusCollector) FinishBlockToSeal(blockID flow.Identifier)

FinishBlockToSeal reports Metrics C4: Block Received by CCL → Block Seal in finalized block

func (*ConsensusCollector) FinishCollectionToFinalized

func (cc *ConsensusCollector) FinishCollectionToFinalized(collectionID flow.Identifier)

FinishCollectionToFinalized reports Metrics C1: Collection Received by CCL→ Collection Included in Finalized Block

func (*ConsensusCollector) StartBlockToSeal

func (cc *ConsensusCollector) StartBlockToSeal(blockID flow.Identifier)

StartBlockToSeal reports Metrics C4: Block Received by CCL → Block Seal in finalized block

func (*ConsensusCollector) StartCollectionToFinalized

func (cc *ConsensusCollector) StartCollectionToFinalized(collectionID flow.Identifier)

StartCollectionToFinalized reports Metrics C1: Collection Received by CCL→ Collection Included in Finalized Block

type EngineCollector

type EngineCollector struct {
	// contains filtered or unexported fields
}

func NewEngineCollector

func NewEngineCollector() *EngineCollector

func (*EngineCollector) MessageHandled

func (ec *EngineCollector) MessageHandled(engine string, message string)

func (*EngineCollector) MessageReceived

func (ec *EngineCollector) MessageReceived(engine string, message string)

func (*EngineCollector) MessageSent

func (ec *EngineCollector) MessageSent(engine string, message string)

type EntriesFunc

type EntriesFunc func() uint

type ExecutionCollector

type ExecutionCollector struct {
	// contains filtered or unexported fields
}

func NewExecutionCollector

func NewExecutionCollector(tracer *trace.OpenTracer, registerer prometheus.Registerer) *ExecutionCollector

func (*ExecutionCollector) ChunkDataPackRequested

func (ec *ExecutionCollector) ChunkDataPackRequested()

ChunkDataPackRequested is executed every time a chunk data pack request is arrived at execution node. It increases the request counter by one.

func (*ExecutionCollector) DiskSize added in v0.10.0

func (ec *ExecutionCollector) DiskSize(bytes uint64)

func (*ExecutionCollector) ExecutionCollectionRequestRetried

func (ec *ExecutionCollector) ExecutionCollectionRequestRetried()

func (*ExecutionCollector) ExecutionCollectionRequestSent

func (ec *ExecutionCollector) ExecutionCollectionRequestSent()

func (*ExecutionCollector) ExecutionGasUsedPerBlock

func (ec *ExecutionCollector) ExecutionGasUsedPerBlock(gas uint64)

ExecutionGasUsedPerBlock reports gas used per block

func (*ExecutionCollector) ExecutionLastExecutedBlockHeight

func (ec *ExecutionCollector) ExecutionLastExecutedBlockHeight(height uint64)

ExecutionLastExecutedBlockHeight reports last executed block height

func (*ExecutionCollector) ExecutionStateReadsPerBlock

func (ec *ExecutionCollector) ExecutionStateReadsPerBlock(reads uint64)

ExecutionStateReadsPerBlock reports number of state access/read operations per block

func (*ExecutionCollector) ExecutionStateStorageDiskTotal

func (ec *ExecutionCollector) ExecutionStateStorageDiskTotal(bytes int64)

ExecutionStateStorageDiskTotal reports the total storage size of the execution state on disk in bytes

func (*ExecutionCollector) ExecutionStorageStateCommitment

func (ec *ExecutionCollector) ExecutionStorageStateCommitment(bytes int64)

ExecutionStorageStateCommitment reports the storage size of a state commitment

func (*ExecutionCollector) ExecutionSync

func (ec *ExecutionCollector) ExecutionSync(syncing bool)

func (*ExecutionCollector) ExecutionTotalExecutedTransactions

func (ec *ExecutionCollector) ExecutionTotalExecutedTransactions(numberOfTx int)

ExecutionTotalExecutedTransactions reports total executed transactions

func (*ExecutionCollector) FinishBlockReceivedToExecuted

func (ec *ExecutionCollector) FinishBlockReceivedToExecuted(blockID flow.Identifier)

FinishBlockReceivedToExecuted finishes a span to trace the duration of a block from being received for execution to execution being finished

func (*ExecutionCollector) ForestApproxMemorySize

func (ec *ExecutionCollector) ForestApproxMemorySize(bytes uint64)

ForestApproxMemorySize records approximate memory usage of forest (all in-memory trees)

func (*ExecutionCollector) ForestNumberOfTrees

func (ec *ExecutionCollector) ForestNumberOfTrees(number uint64)

ForestNumberOfTrees current number of trees in a forest (in memory)

func (*ExecutionCollector) LatestTrieMaxDepth

func (ec *ExecutionCollector) LatestTrieMaxDepth(number uint64)

LatestTrieMaxDepth records the maximum depth of the last created trie

func (*ExecutionCollector) LatestTrieMaxDepthDiff

func (ec *ExecutionCollector) LatestTrieMaxDepthDiff(number uint64)

LatestTrieMaxDepthDiff records the difference between the max depth of the latest created trie and parent trie

func (*ExecutionCollector) LatestTrieRegCount

func (ec *ExecutionCollector) LatestTrieRegCount(number uint64)

LatestTrieRegCount records the number of unique register allocated (the lastest created trie)

func (*ExecutionCollector) LatestTrieRegCountDiff

func (ec *ExecutionCollector) LatestTrieRegCountDiff(number uint64)

LatestTrieRegCountDiff records the difference between the number of unique register allocated of the latest created trie and parent trie

func (*ExecutionCollector) ProofSize

func (ec *ExecutionCollector) ProofSize(bytes uint32)

ProofSize records a proof size

func (*ExecutionCollector) ReadDuration

func (ec *ExecutionCollector) ReadDuration(duration time.Duration)

ReadDuration records absolute time for the read from a trie

func (*ExecutionCollector) ReadDurationPerItem

func (ec *ExecutionCollector) ReadDurationPerItem(duration time.Duration)

ReadDurationPerItem records read time for single value (total duration / number of read values)

func (*ExecutionCollector) ReadValuesNumber

func (ec *ExecutionCollector) ReadValuesNumber(number uint64)

ReadValuesNumber accumulates number of read values

func (*ExecutionCollector) ReadValuesSize

func (ec *ExecutionCollector) ReadValuesSize(bytes uint64)

ReadValuesSize total size (in bytes) of read values

func (*ExecutionCollector) StartBlockReceivedToExecuted

func (ec *ExecutionCollector) StartBlockReceivedToExecuted(blockID flow.Identifier)

StartBlockReceivedToExecuted starts a span to trace the duration of a block from being received for execution to execution being finished

func (*ExecutionCollector) TransactionChecked

func (ec *ExecutionCollector) TransactionChecked(dur time.Duration)

TransactionChecked reports the time spent checking a single transaction

func (*ExecutionCollector) TransactionInterpreted

func (ec *ExecutionCollector) TransactionInterpreted(dur time.Duration)

TransactionInterpreted reports the time spent interpreting a single transaction

func (*ExecutionCollector) TransactionParsed

func (ec *ExecutionCollector) TransactionParsed(dur time.Duration)

TransactionParsed reports the time spent parsing a single transaction

func (*ExecutionCollector) UpdateCount

func (ec *ExecutionCollector) UpdateCount()

UpdateCount increase a counter of performed updates

func (*ExecutionCollector) UpdateDuration

func (ec *ExecutionCollector) UpdateDuration(duration time.Duration)

UpdateDuration records absolute time for the update of a trie

func (*ExecutionCollector) UpdateDurationPerItem

func (ec *ExecutionCollector) UpdateDurationPerItem(duration time.Duration)

UpdateDurationPerItem records update time for single value (total duration / number of updated values)

func (*ExecutionCollector) UpdateValuesNumber

func (ec *ExecutionCollector) UpdateValuesNumber(number uint64)

UpdateValuesNumber accumulates number of updated values

func (*ExecutionCollector) UpdateValuesSize

func (ec *ExecutionCollector) UpdateValuesSize(bytes uint64)

UpdateValuesSize total size (in bytes) of updates values

type HotstuffCollector

type HotstuffCollector struct {
	// contains filtered or unexported fields
}

HotstuffCollector implements only the metrics emitted by the HotStuff core logic. We have multiple instances of HotStuff running within Flow: Consensus Nodes form the main consensus committee. In addition each Collector node cluster runs their own HotStuff instance. Depending on the node role, the name space is different. Furthermore, even within the `collection` name space, we need to separate metrics between the different clusters. We do this by adding the label `committeeID` to the HotStuff metrics and allowing for configurable name space.

func NewHotstuffCollector

func NewHotstuffCollector(chain flow.ChainID) *HotstuffCollector

func (*HotstuffCollector) CommitteeProcessingDuration

func (hc *HotstuffCollector) CommitteeProcessingDuration(duration time.Duration)

CommitteeProcessingDuration measures the time which the HotStuff's core logic spends in the hotstuff.Committee component, i.e. the time determining consensus committee relations.

func (*HotstuffCollector) CountSkipped

func (hc *HotstuffCollector) CountSkipped()

CountSkipped counts the number of skips we did.

func (*HotstuffCollector) CountTimeout

func (hc *HotstuffCollector) CountTimeout()

CountTimeout counts the number of timeouts we had.

func (*HotstuffCollector) HotStuffBusyDuration

func (hc *HotstuffCollector) HotStuffBusyDuration(duration time.Duration, event string)

HotStuffBusyDuration reports Metrics C6 HotStuff Busy Duration

func (*HotstuffCollector) HotStuffIdleDuration

func (hc *HotstuffCollector) HotStuffIdleDuration(duration time.Duration)

HotStuffIdleDuration reports Metrics C6 HotStuff Idle Duration

func (*HotstuffCollector) HotStuffWaitDuration

func (hc *HotstuffCollector) HotStuffWaitDuration(duration time.Duration, event string)

HotStuffWaitDuration reports Metrics C6 HotStuff Wait Duration

func (*HotstuffCollector) PayloadProductionDuration

func (hc *HotstuffCollector) PayloadProductionDuration(duration time.Duration)

PayloadProductionDuration reports the time which the HotStuff's core logic spends in the module.Builder component, i.e. the with generating block payloads

func (*HotstuffCollector) SetCurView

func (hc *HotstuffCollector) SetCurView(view uint64)

HotstuffCollector reports Metrics C8: Current View

func (*HotstuffCollector) SetQCView

func (hc *HotstuffCollector) SetQCView(view uint64)

NewestKnownQC reports Metrics C9: View of Newest Known QC

func (*HotstuffCollector) SetTimeout

func (hc *HotstuffCollector) SetTimeout(duration time.Duration)

SetTimeout sets the current timeout duration.

func (*HotstuffCollector) SignerProcessingDuration

func (hc *HotstuffCollector) SignerProcessingDuration(duration time.Duration)

SignerProcessingDuration reports the time which the HotStuff's core logic spends in the hotstuff.Signer component, i.e. the with crypto-related operations.

func (*HotstuffCollector) ValidatorProcessingDuration

func (hc *HotstuffCollector) ValidatorProcessingDuration(duration time.Duration)

ValidatorProcessingDuration reports the time which the HotStuff's core logic spends in the hotstuff.Validator component, i.e. the with verifying higher-level consensus messages.

type LoaderCollector

type LoaderCollector struct {
	// contains filtered or unexported fields
}

func NewLoaderCollector

func NewLoaderCollector() *LoaderCollector

func (*LoaderCollector) SetTPSConfigured

func (cc *LoaderCollector) SetTPSConfigured(tps int)

func (*LoaderCollector) TransactionSent

func (cc *LoaderCollector) TransactionSent()

type MempoolCollector

type MempoolCollector struct {
	// contains filtered or unexported fields
}

func NewMempoolCollector

func NewMempoolCollector(interval time.Duration) *MempoolCollector

func (*MempoolCollector) Done

func (mc *MempoolCollector) Done() <-chan struct{}

func (*MempoolCollector) MempoolEntries

func (mc *MempoolCollector) MempoolEntries(resource string, entries uint)

func (*MempoolCollector) Ready

func (mc *MempoolCollector) Ready() <-chan struct{}

func (*MempoolCollector) Register

func (mc *MempoolCollector) Register(resource string, entriesFunc EntriesFunc) error

Register registers entriesFunc for a resource

type NetworkCollector

type NetworkCollector struct {
	// contains filtered or unexported fields
}

func NewNetworkCollector

func NewNetworkCollector() *NetworkCollector

func (*NetworkCollector) InboundConnections added in v0.12.0

func (nc *NetworkCollector) InboundConnections(connectionCount uint)

func (*NetworkCollector) MessageAdded

func (nc *NetworkCollector) MessageAdded(priority int)

func (*NetworkCollector) MessageRemoved

func (nc *NetworkCollector) MessageRemoved(priority int)

func (*NetworkCollector) NetworkDuplicateMessagesDropped

func (nc *NetworkCollector) NetworkDuplicateMessagesDropped(topic, messageType string)

NetworkDuplicateMessagesDropped tracks the number of messages dropped by the network layer due to duplication

func (*NetworkCollector) NetworkMessageReceived

func (nc *NetworkCollector) NetworkMessageReceived(sizeBytes int, topic string, messageType string)

NetworkMessageReceived tracks the message size of the last message received on the wire in bytes for the given topic

func (*NetworkCollector) NetworkMessageSent

func (nc *NetworkCollector) NetworkMessageSent(sizeBytes int, topic string, messageType string)

NetworkMessageSent tracks the message size of the last message sent out on the wire in bytes for the given topic

func (*NetworkCollector) OutboundConnections added in v0.12.0

func (nc *NetworkCollector) OutboundConnections(connectionCount uint)

func (*NetworkCollector) QueueDuration

func (nc *NetworkCollector) QueueDuration(duration time.Duration, priority int)

type NoopCollector

type NoopCollector struct{}

func NewNoopCollector

func NewNoopCollector() *NoopCollector

func (*NoopCollector) BadgerLSMSize

func (nc *NoopCollector) BadgerLSMSize(sizeBytes int64)

func (*NoopCollector) BadgerNumBlockedPuts

func (nc *NoopCollector) BadgerNumBlockedPuts(n int64)

func (*NoopCollector) BadgerNumBytesRead

func (nc *NoopCollector) BadgerNumBytesRead(n int64)

func (*NoopCollector) BadgerNumBytesWritten

func (nc *NoopCollector) BadgerNumBytesWritten(n int64)

func (*NoopCollector) BadgerNumGets

func (nc *NoopCollector) BadgerNumGets(n int64)

func (*NoopCollector) BadgerNumMemtableGets

func (nc *NoopCollector) BadgerNumMemtableGets(n int64)

func (*NoopCollector) BadgerNumPuts

func (nc *NoopCollector) BadgerNumPuts(n int64)

func (*NoopCollector) BadgerNumReads

func (nc *NoopCollector) BadgerNumReads(n int64)

func (*NoopCollector) BadgerNumWrites

func (nc *NoopCollector) BadgerNumWrites(n int64)

func (*NoopCollector) BadgerVLogSize

func (nc *NoopCollector) BadgerVLogSize(sizeBytes int64)

func (*NoopCollector) BlockFinalized

func (nc *NoopCollector) BlockFinalized(*flow.Block)

func (*NoopCollector) BlockProposed

func (nc *NoopCollector) BlockProposed(*flow.Block)

func (*NoopCollector) BlockSealed

func (nc *NoopCollector) BlockSealed(*flow.Block)

func (*NoopCollector) CacheEntries

func (nc *NoopCollector) CacheEntries(resource string, entries uint)

func (*NoopCollector) CacheHit

func (nc *NoopCollector) CacheHit(resource string)

func (*NoopCollector) CacheMiss

func (nc *NoopCollector) CacheMiss(resource string)

func (*NoopCollector) CheckSealingDuration added in v0.11.0

func (nc *NoopCollector) CheckSealingDuration(duration time.Duration)

func (*NoopCollector) ChunkDataPackRequested

func (nc *NoopCollector) ChunkDataPackRequested()

func (*NoopCollector) ClusterBlockFinalized

func (nc *NoopCollector) ClusterBlockFinalized(*cluster.Block)

func (*NoopCollector) ClusterBlockProposed

func (nc *NoopCollector) ClusterBlockProposed(*cluster.Block)

func (*NoopCollector) CommitteeProcessingDuration

func (nc *NoopCollector) CommitteeProcessingDuration(duration time.Duration)

func (*NoopCollector) CountSkipped

func (nc *NoopCollector) CountSkipped()

func (*NoopCollector) CountTimeout

func (nc *NoopCollector) CountTimeout()

func (*NoopCollector) DiskSize added in v0.10.0

func (nc *NoopCollector) DiskSize(uint64)

func (*NoopCollector) ExecutionCollectionRequestRetried

func (nc *NoopCollector) ExecutionCollectionRequestRetried()

func (*NoopCollector) ExecutionCollectionRequestSent

func (nc *NoopCollector) ExecutionCollectionRequestSent()

func (*NoopCollector) ExecutionGasUsedPerBlock

func (nc *NoopCollector) ExecutionGasUsedPerBlock(gas uint64)

func (*NoopCollector) ExecutionLastExecutedBlockHeight

func (nc *NoopCollector) ExecutionLastExecutedBlockHeight(height uint64)

func (*NoopCollector) ExecutionStateReadsPerBlock

func (nc *NoopCollector) ExecutionStateReadsPerBlock(reads uint64)

func (*NoopCollector) ExecutionStateStorageDiskTotal

func (nc *NoopCollector) ExecutionStateStorageDiskTotal(bytes int64)

func (*NoopCollector) ExecutionStorageStateCommitment

func (nc *NoopCollector) ExecutionStorageStateCommitment(bytes int64)

func (*NoopCollector) ExecutionSync

func (nc *NoopCollector) ExecutionSync(syncing bool)

func (*NoopCollector) ExecutionTotalExecutedTransactions

func (ec *NoopCollector) ExecutionTotalExecutedTransactions(numberOfTx int)

func (*NoopCollector) FinalizedHeight

func (nc *NoopCollector) FinalizedHeight(height uint64)

func (*NoopCollector) FinishBlockReceivedToExecuted

func (nc *NoopCollector) FinishBlockReceivedToExecuted(blockID flow.Identifier)

func (*NoopCollector) FinishBlockToSeal

func (nc *NoopCollector) FinishBlockToSeal(blockID flow.Identifier)

func (*NoopCollector) FinishCollectionToFinalized

func (nc *NoopCollector) FinishCollectionToFinalized(collectionID flow.Identifier)

func (*NoopCollector) ForestApproxMemorySize

func (nc *NoopCollector) ForestApproxMemorySize(bytes uint64)

func (*NoopCollector) ForestNumberOfTrees

func (nc *NoopCollector) ForestNumberOfTrees(number uint64)

func (*NoopCollector) HotStuffBusyDuration

func (nc *NoopCollector) HotStuffBusyDuration(duration time.Duration, event string)

func (*NoopCollector) HotStuffIdleDuration

func (nc *NoopCollector) HotStuffIdleDuration(duration time.Duration)

func (*NoopCollector) HotStuffWaitDuration

func (nc *NoopCollector) HotStuffWaitDuration(duration time.Duration, event string)

func (*NoopCollector) InboundConnections added in v0.12.0

func (nc *NoopCollector) InboundConnections(_ uint)

func (*NoopCollector) LatestTrieMaxDepth

func (nc *NoopCollector) LatestTrieMaxDepth(number uint64)

func (*NoopCollector) LatestTrieMaxDepthDiff

func (nc *NoopCollector) LatestTrieMaxDepthDiff(number uint64)

func (*NoopCollector) LatestTrieRegCount

func (nc *NoopCollector) LatestTrieRegCount(number uint64)

func (*NoopCollector) LatestTrieRegCountDiff

func (nc *NoopCollector) LatestTrieRegCountDiff(number uint64)

func (*NoopCollector) LogVerifiableChunkSize

func (nc *NoopCollector) LogVerifiableChunkSize(size float64)

func (*NoopCollector) MempoolEntries

func (nc *NoopCollector) MempoolEntries(resource string, entries uint)

func (*NoopCollector) MessageAdded

func (nc *NoopCollector) MessageAdded(priority int)

func (*NoopCollector) MessageHandled

func (nc *NoopCollector) MessageHandled(engine string, message string)

func (*NoopCollector) MessageReceived

func (nc *NoopCollector) MessageReceived(engine string, message string)

func (*NoopCollector) MessageRemoved

func (nc *NoopCollector) MessageRemoved(priority int)

func (*NoopCollector) MessageSent

func (nc *NoopCollector) MessageSent(engine string, message string)

func (*NoopCollector) NetworkDuplicateMessagesDropped

func (nc *NoopCollector) NetworkDuplicateMessagesDropped(topic string, messageType string)

func (*NoopCollector) NetworkMessageReceived

func (nc *NoopCollector) NetworkMessageReceived(sizeBytes int, topic string, messageType string)

func (*NoopCollector) NetworkMessageSent

func (nc *NoopCollector) NetworkMessageSent(sizeBytes int, topic string, messageType string)

func (*NoopCollector) OnChunkDataPackReceived

func (nc *NoopCollector) OnChunkDataPackReceived()

func (*NoopCollector) OnChunkDataPackRequested

func (nc *NoopCollector) OnChunkDataPackRequested()

func (*NoopCollector) OnExecutionReceiptReceived

func (nc *NoopCollector) OnExecutionReceiptReceived()

func (*NoopCollector) OnExecutionResultReceived

func (nc *NoopCollector) OnExecutionResultReceived()

func (*NoopCollector) OnExecutionResultSent

func (nc *NoopCollector) OnExecutionResultSent()

func (*NoopCollector) OnResultApproval

func (nc *NoopCollector) OnResultApproval()

func (*NoopCollector) OnVerifiableChunkReceived

func (nc *NoopCollector) OnVerifiableChunkReceived()

func (*NoopCollector) OnVerifiableChunkSent

func (nc *NoopCollector) OnVerifiableChunkSent()

func (*NoopCollector) OutboundConnections added in v0.12.0

func (nc *NoopCollector) OutboundConnections(_ uint)

func (*NoopCollector) PayloadProductionDuration

func (nc *NoopCollector) PayloadProductionDuration(duration time.Duration)

func (*NoopCollector) ProofSize

func (nc *NoopCollector) ProofSize(bytes uint32)

func (*NoopCollector) QueueDuration

func (nc *NoopCollector) QueueDuration(duration time.Duration, priority int)

func (*NoopCollector) RanGC

func (nc *NoopCollector) RanGC(duration time.Duration)

func (*NoopCollector) ReadDuration

func (nc *NoopCollector) ReadDuration(duration time.Duration)

func (*NoopCollector) ReadDurationPerItem

func (nc *NoopCollector) ReadDurationPerItem(duration time.Duration)

func (*NoopCollector) ReadValuesNumber

func (nc *NoopCollector) ReadValuesNumber(number uint64)

func (*NoopCollector) ReadValuesSize

func (nc *NoopCollector) ReadValuesSize(byte uint64)

func (*NoopCollector) Register

func (nm *NoopCollector) Register(resource string, entriesFunc EntriesFunc) error

func (*NoopCollector) SealedHeight

func (nc *NoopCollector) SealedHeight(height uint64)

func (*NoopCollector) SetCurView

func (nc *NoopCollector) SetCurView(view uint64)

func (*NoopCollector) SetQCView

func (nc *NoopCollector) SetQCView(view uint64)

func (*NoopCollector) SetTimeout

func (nc *NoopCollector) SetTimeout(duration time.Duration)

func (*NoopCollector) SignerProcessingDuration

func (nc *NoopCollector) SignerProcessingDuration(duration time.Duration)

func (*NoopCollector) StartBlockReceivedToExecuted

func (nc *NoopCollector) StartBlockReceivedToExecuted(blockID flow.Identifier)

func (*NoopCollector) StartBlockToSeal

func (nc *NoopCollector) StartBlockToSeal(blockID flow.Identifier)

func (*NoopCollector) StartCollectionToFinalized

func (nc *NoopCollector) StartCollectionToFinalized(collectionID flow.Identifier)

func (*NoopCollector) TransactionChecked

func (nc *NoopCollector) TransactionChecked(dur time.Duration)

func (*NoopCollector) TransactionExecuted

func (nc *NoopCollector) TransactionExecuted(txID flow.Identifier, when time.Time)

func (*NoopCollector) TransactionExpired

func (nc *NoopCollector) TransactionExpired(txID flow.Identifier)

func (*NoopCollector) TransactionFinalized

func (nc *NoopCollector) TransactionFinalized(txID flow.Identifier, when time.Time)

func (*NoopCollector) TransactionIngested

func (nc *NoopCollector) TransactionIngested(txID flow.Identifier)

func (*NoopCollector) TransactionInterpreted

func (nc *NoopCollector) TransactionInterpreted(dur time.Duration)

func (*NoopCollector) TransactionParsed

func (nc *NoopCollector) TransactionParsed(dur time.Duration)

func (*NoopCollector) TransactionReceived

func (nc *NoopCollector) TransactionReceived(txID flow.Identifier, when time.Time)

func (*NoopCollector) TransactionSubmissionFailed

func (nc *NoopCollector) TransactionSubmissionFailed()

func (*NoopCollector) UpdateCount

func (nc *NoopCollector) UpdateCount()

func (*NoopCollector) UpdateDuration

func (nc *NoopCollector) UpdateDuration(duration time.Duration)

func (*NoopCollector) UpdateDurationPerItem

func (nc *NoopCollector) UpdateDurationPerItem(duration time.Duration)

func (*NoopCollector) UpdateValuesNumber

func (nc *NoopCollector) UpdateValuesNumber(number uint64)

func (*NoopCollector) UpdateValuesSize

func (nc *NoopCollector) UpdateValuesSize(byte uint64)

func (*NoopCollector) ValidatorProcessingDuration

func (nc *NoopCollector) ValidatorProcessingDuration(duration time.Duration)

type PingCollector

type PingCollector struct {
	// contains filtered or unexported fields
}

func NewPingCollector

func NewPingCollector() *PingCollector

func (*PingCollector) NodeReachable

func (pc *PingCollector) NodeReachable(node *flow.Identity, nodeInfo string, reachable bool)

type Server

type Server struct {
	// contains filtered or unexported fields
}

Server is the http server that will be serving the /metrics request for prometheus

func NewServer

func NewServer(log zerolog.Logger, port uint, enableProfilerEndpoint bool) *Server

NewServer creates a new server that will start on the specified port, and responds to only the `/metrics` endpoint

func (*Server) Done

func (m *Server) Done() <-chan struct{}

Done returns a channel that will close when shutdown is complete.

func (*Server) Ready

func (m *Server) Ready() <-chan struct{}

Ready returns a channel that will close when the network stack is ready.

type StorageCollector

type StorageCollector struct {
	// contains filtered or unexported fields
}

func GetStorageCollector

func GetStorageCollector() *StorageCollector

func (*StorageCollector) RetryOnConflict

func (sc *StorageCollector) RetryOnConflict()

func (*StorageCollector) SkipDuplicate

func (sc *StorageCollector) SkipDuplicate()

type TransactionCollector

type TransactionCollector struct {
	// contains filtered or unexported fields
}

func NewTransactionCollector

func NewTransactionCollector(transactionTimings mempool.TransactionTimings, log zerolog.Logger,
	logTimeToFinalized bool, logTimeToExecuted bool, logTimeToFinalizedExecuted bool) *TransactionCollector

func (*TransactionCollector) TransactionExecuted

func (tc *TransactionCollector) TransactionExecuted(txID flow.Identifier, when time.Time)

func (*TransactionCollector) TransactionExpired

func (tc *TransactionCollector) TransactionExpired(txID flow.Identifier)

func (*TransactionCollector) TransactionFinalized

func (tc *TransactionCollector) TransactionFinalized(txID flow.Identifier, when time.Time)

func (*TransactionCollector) TransactionReceived

func (tc *TransactionCollector) TransactionReceived(txID flow.Identifier, when time.Time)

func (*TransactionCollector) TransactionSubmissionFailed

func (tc *TransactionCollector) TransactionSubmissionFailed()

type VerificationCollector

type VerificationCollector struct {
	// contains filtered or unexported fields
}

func NewVerificationCollector

func NewVerificationCollector(tracer *trace.OpenTracer, registerer prometheus.Registerer, log zerolog.Logger) *VerificationCollector

func (*VerificationCollector) LogVerifiableChunkSize

func (vc *VerificationCollector) LogVerifiableChunkSize(size float64)

LogVerifiableChunkSize is called whenever a verifiable chunk is shaped for a specific chunk. It adds the size of the verifiable chunk to the histogram. A verifiable chunk is assumed to capture all the resources needed to verify a chunk. The purpose of this function is to track the overall chunk resources size on disk. Todo wire this up to do monitoring (3183)

func (*VerificationCollector) OnChunkDataPackReceived

func (vc *VerificationCollector) OnChunkDataPackReceived()

OnChunkDataPackReceived is called on a receiving a chunk data pack by Match engine It increments the total number of chunk data packs received.

func (*VerificationCollector) OnChunkDataPackRequested

func (vc *VerificationCollector) OnChunkDataPackRequested()

OnChunkDataPackRequested is called on requesting a chunk data pack by Match engine It increments the total number of chunk data packs requested.

func (*VerificationCollector) OnExecutionReceiptReceived

func (vc *VerificationCollector) OnExecutionReceiptReceived()

OnExecutionReceiptReceived is called whenever a new execution receipt arrives at Finder engine. It increments total number of received receipts.

func (*VerificationCollector) OnExecutionResultReceived

func (vc *VerificationCollector) OnExecutionResultReceived()

OnExecutionResultReceived is called whenever a new execution result is successfully received by Match engine from Finder engine. It increments the total number of received execution results.

func (*VerificationCollector) OnExecutionResultSent

func (vc *VerificationCollector) OnExecutionResultSent()

OnExecutionResultSent is called whenever a new execution result is sent by Finder engine to the match engine. It increments total number of sent execution results.

func (*VerificationCollector) OnResultApproval

func (vc *VerificationCollector) OnResultApproval()

OnResultApproval is called whenever a result approval for is emitted to consensus nodes. It increases the total number of result approvals.

func (*VerificationCollector) OnVerifiableChunkReceived

func (vc *VerificationCollector) OnVerifiableChunkReceived()

OnVerifiableChunkReceived is called whenever a verifiable chunk is received by Verifier engine from Match engine.It increments the total number of sent verifiable chunks.

func (*VerificationCollector) OnVerifiableChunkSent

func (vc *VerificationCollector) OnVerifiableChunkSent()

OnVerifiableChunkSent is called on a successful submission of matched chunk by Match engine to Verifier engine. It increments the total number of chunks matched by match engine.

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL