fix_: peer counter (#5348)
This commit is contained in:
parent
eb0f907137
commit
b18baea5cd
|
@ -1349,6 +1349,11 @@ func (w *Waku) Start() error {
|
|||
defer w.wg.Done()
|
||||
ticker := time.NewTicker(5 * time.Second)
|
||||
defer ticker.Stop()
|
||||
|
||||
peerCountTimer := time.NewTimer(0) // fire immediately
|
||||
defer peerCountTimer.Stop()
|
||||
|
||||
peerCount := 0
|
||||
for {
|
||||
select {
|
||||
case <-w.ctx.Done():
|
||||
|
@ -1361,6 +1366,20 @@ func (w *Waku) Start() error {
|
|||
if w.cfg.LightClient {
|
||||
w.lightClientConnectionStatus()
|
||||
}
|
||||
case <-peerCountTimer.C:
|
||||
peerCountTimer.Reset(3 * time.Second)
|
||||
newPeerCount := len(w.node.Host().Network().Peers())
|
||||
if newPeerCount != peerCount && w.onPeerStats != nil {
|
||||
peerCount = newPeerCount
|
||||
// TODO: `IsOnline` is not implemented correctly here, however
|
||||
// this is not a problem because Desktop ignores that value.
|
||||
// This should be fixed to as part of issue
|
||||
// https://github.com/status-im/status-go/issues/4628
|
||||
w.onPeerStats(types.ConnStatus{
|
||||
IsOnline: true,
|
||||
Peers: FormatPeerStats(w.node),
|
||||
})
|
||||
}
|
||||
case c := <-w.topicHealthStatusChan:
|
||||
w.connStatusMu.Lock()
|
||||
|
||||
|
|
Loading…
Reference in New Issue