Skip to content

Commit 7728bf8

Browse files
move CrossLinkPendingQueueGauge to node and initiate it from blockchain implementation
1 parent c1ef564 commit 7728bf8

File tree

3 files changed

+24
-34
lines changed

3 files changed

+24
-34
lines changed

core/blockchain_impl.go

Lines changed: 13 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -69,9 +69,6 @@ import (
6969
staking "github.com/harmony-one/harmony/staking/types"
7070
lru "github.com/hashicorp/golang-lru"
7171
goleveldb "github.com/syndtr/goleveldb/leveldb"
72-
73-
// Import for crosslink metrics
74-
crosslinkmetrics "github.com/harmony-one/harmony/internal/metrics"
7572
)
7673

7774
var (
@@ -93,6 +90,10 @@ var (
9390
blockValidationTimer = metrics.NewRegisteredTimer("chain/validation", nil)
9491
blockExecutionTimer = metrics.NewRegisteredTimer("chain/execution", nil)
9592
blockWriteTimer = metrics.NewRegisteredTimer("chain/write", nil)
93+
94+
// CrossLinkPendingQueueGauge is used to monitor the current size of pending crosslink queue
95+
CrossLinkPendingQueueGauge = metrics.NewRegisteredGauge("chain/crosslink/pending_queue_size", nil)
96+
9697
// ErrCrosslinkNotFound is the error when no crosslink found
9798
ErrCrosslinkNotFound = errors.New("crosslink not found")
9899
// ErrZeroBytes is the error when it reads empty crosslink
@@ -2564,7 +2565,7 @@ func (bc *BlockChainImpl) ReadPendingCrossLinks() ([]types.CrossLink, error) {
25642565
cls, err := bc.readPendingCrossLinks()
25652566
if err == nil {
25662567
// Update pending queue gauge with current size
2567-
crosslinkmetrics.UpdatePendingCrossLinkQueueGauge(len(cls))
2568+
bc.updatePendingCrossLinkQueueGauge(len(cls))
25682569
}
25692570
return cls, err
25702571
}
@@ -2578,15 +2579,15 @@ func (bc *BlockChainImpl) AddPendingCrossLinks(pendingCLs []types.CrossLink) (in
25782579
err := bc.CachePendingCrossLinks(pendingCLs)
25792580
if err == nil {
25802581
// Update pending queue gauge with new size
2581-
crosslinkmetrics.UpdatePendingCrossLinkQueueGauge(len(pendingCLs))
2582+
bc.updatePendingCrossLinkQueueGauge(len(pendingCLs))
25822583
}
25832584
return len(pendingCLs), err
25842585
}
25852586
cls = append(cls, pendingCLs...)
25862587
err = bc.CachePendingCrossLinks(cls)
25872588
if err == nil {
25882589
// Update pending queue gauge with new size
2589-
crosslinkmetrics.UpdatePendingCrossLinkQueueGauge(len(cls))
2590+
bc.updatePendingCrossLinkQueueGauge(len(cls))
25902591
}
25912592
return len(cls), err
25922593
}
@@ -2621,11 +2622,16 @@ func (bc *BlockChainImpl) DeleteFromPendingCrossLinks(crossLinks []types.CrossLi
26212622
err = bc.CachePendingCrossLinks(pendingCLs)
26222623
if err == nil {
26232624
// Update pending queue gauge with new size after deletion
2624-
crosslinkmetrics.UpdatePendingCrossLinkQueueGauge(len(pendingCLs))
2625+
bc.updatePendingCrossLinkQueueGauge(len(pendingCLs))
26252626
}
26262627
return len(pendingCLs), err
26272628
}
26282629

2630+
// updatePendingCrossLinkQueueGauge updates the pending crosslink queue size gauge
2631+
func (bc *BlockChainImpl) updatePendingCrossLinkQueueGauge(size int) {
2632+
CrossLinkPendingQueueGauge.Update(int64(size))
2633+
}
2634+
26292635
func (bc *BlockChainImpl) IsSameLeaderAsPreviousBlock(block *types.Block) bool {
26302636
if IsEpochBlock(block) {
26312637
return false

internal/metrics/crosslink.go

Lines changed: 0 additions & 27 deletions
This file was deleted.

node/harmony/metrics.go

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -71,6 +71,16 @@ var (
7171
},
7272
)
7373

74+
// CrossLinkPendingQueueGauge is used to monitor the current size of pending crosslink queue
75+
CrossLinkPendingQueueGauge = prometheus.NewGauge(
76+
prometheus.GaugeOpts{
77+
Namespace: "hmy",
78+
Subsystem: "p2p",
79+
Name: "crosslink_pending_queue_size",
80+
Help: "current number of crosslinks in pending queue",
81+
},
82+
)
83+
7484
onceMetrics sync.Once
7585
)
7686

@@ -82,6 +92,7 @@ func initMetrics() {
8292
nodeConsensusMessageCounterVec,
8393
nodeNodeMessageCounterVec,
8494
nodeCrossLinkMessageCounterVec,
95+
CrossLinkPendingQueueGauge,
8596
)
8697
})
8798
}

0 commit comments

Comments
 (0)