Skip to content

Commit 28ba3f1

Browse files
authored
Reduce session ping frequency from 30s to 5m, log at trace level (skycoin#371)
The ping loop measures latency to DMSG servers for server selection. It is not a keepalive (yamux handles that). 30s was excessive, generating N_clients * N_servers debug log lines every 30 seconds. Changed to 5 minutes and lowered log level from Debug to Trace.
1 parent 2c86ee5 commit 28ba3f1

1 file changed

Lines changed: 6 additions & 3 deletions

File tree

pkg/dmsg/client.go

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -527,8 +527,11 @@ func (ce *Client) reconnectMissing(ctx context.Context) {
527527
}
528528

529529
// pingSessionsLoop periodically pings all sessions to measure latency.
530+
// The interval is 1 hour — this is for server selection, not keepalive
531+
// (yamux handles its own keepalives). 30s was excessive and generated
532+
// noisy DEBUG logs (N_clients × N_servers pings every 30s).
530533
func (ce *Client) pingSessionsLoop(ctx context.Context) {
531-
ticker := time.NewTicker(30 * time.Second)
534+
ticker := time.NewTicker(1 * time.Hour)
532535
defer ticker.Stop()
533536

534537
// Do an initial ping immediately.
@@ -552,11 +555,11 @@ func (ce *Client) pingSessions() {
552555
rtt, err := ses.Ping()
553556
if err != nil {
554557
ce.log.WithError(err).WithField("server", ses.RemotePK()).
555-
Debug("Ping failed, keeping previous latency measurement")
558+
Trace("Ping failed, keeping previous latency measurement")
556559
continue
557560
}
558561
ses.SetLastPing(rtt)
559562
ce.log.WithField("server", ses.RemotePK()).WithField("rtt", rtt).
560-
Debug("Session ping measured")
563+
Trace("Session ping measured")
561564
}
562565
}

0 commit comments

Comments
 (0)