metrics

package
v0.14.5-patch.1 Latest Latest
Warning

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

Go to latest
Published: Mar 3, 2021 License: AGPL-3.0 Imports: 18 Imported by: 53

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"
	LabelNodeAddress = "nodeaddress"
	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_id"          // verification node, finder engine
	ResourceDiscardedResultID        = "discarded_result_id"          // 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 increases the number of seconds spent in checkSealing

func (*ConsensusCollector) EmergencySeal ¶ added in v0.14.0

func (cc *ConsensusCollector) EmergencySeal()

EmergencySeal increments the counter of emergency seals.

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) OnApprovalProcessingDuration ¶ added in v0.14.1

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

OnApprovalProcessingDuration increases the number of seconds spent processing approvals

func (*ConsensusCollector) OnReceiptProcessingDuration ¶ added in v0.14.1

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

OnReceiptProcessingDuration increases the number of seconds spent processing receipts

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) InboundProcessDuration ¶ added in v0.14.0

func (nc *NetworkCollector) InboundProcessDuration(topic string, duration time.Duration)

InboundProcessDuration tracks the time a queue worker blocked by an engine for processing an incoming message on specified topic (i.e., channel).

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) EmergencySeal ¶ added in v0.14.0

func (nc *NoopCollector) EmergencySeal()

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 (nc *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) InboundProcessDuration ¶ added in v0.14.0

func (nc *NoopCollector) InboundProcessDuration(topic string, duration time.Duration)

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) OnApprovalProcessingDuration ¶ added in v0.14.1

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

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) OnReceiptProcessingDuration ¶ added in v0.14.1

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

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 (nc *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, rtt time.Duration)

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
collection command
consensus command
execution command
verification command

Jump to

Keyboard shortcuts

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