From 8f3c85d0aa959fe2e9139927fcd738501c21cd98 Mon Sep 17 00:00:00 2001 From: Nicolas Lacasse Date: Fri, 2 Aug 2024 11:55:03 -0700 Subject: [PATCH] Adjust clock skew logging thresholds. Previous threshold (1ms for warning logs) is still too spammy. Now we only log at warning for deltas above 5ms. Deltas between 1ms and 5ms are logged at info. PiperOrigin-RevId: 658859819 --- pkg/sentry/time/parameters.go | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/pkg/sentry/time/parameters.go b/pkg/sentry/time/parameters.go index 299c38c97..4845b5143 100644 --- a/pkg/sentry/time/parameters.go +++ b/pkg/sentry/time/parameters.go @@ -229,10 +229,15 @@ func errorAdjust(prevParams Parameters, newParams Parameters, now TSCValue) (Par // The log level is determined by the error severity. func logErrorAdjustment(clock ClockID, errorNS ReferenceNS, orig, adjusted Parameters) { magNS := int64(errorNS.Magnitude()) - if magNS <= time.Millisecond.Nanoseconds() { - // Don't log small errors. + switch { + case magNS < time.Millisecond.Nanoseconds(): + // Less than a millisecond. Too small to care. return + case magNS < 5*time.Millisecond.Nanoseconds(): + // Less than 5 milliseconds. Log at info. + log.Infof("Clock(%v): error: %v ns, adjusted frequency from %v Hz to %v Hz", clock, errorNS, orig.Frequency, adjusted.Frequency) + default: + // More than 5 milliseconds. This is getting interesting. Log at warning. + log.Warningf("Clock(%v): error: %v ns, adjusted frequency from %v Hz to %v Hz", clock, errorNS, orig.Frequency, adjusted.Frequency) } - - log.Warningf("Clock(%v): error: %v ns, adjusted frequency from %v Hz to %v Hz", clock, errorNS, orig.Frequency, adjusted.Frequency) }