From c1b26745f58058399d9b8ae1cbb321fc5b8e97a9 Mon Sep 17 00:00:00 2001 From: GoEdgeLab Date: Tue, 11 Oct 2022 11:31:00 +0800 Subject: [PATCH] =?UTF-8?q?=E6=97=B6=E9=92=9F=E5=90=8C=E6=AD=A5=E7=A8=8B?= =?UTF-8?q?=E5=BA=8F=E6=AF=8F=E5=A4=A9=E5=8F=AA=E6=8F=90=E7=A4=BA=E4=B8=80?= =?UTF-8?q?=E6=AC=A1=E8=AD=A6=E5=91=8A=E4=BF=A1=E6=81=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- internal/utils/clock/manager.go | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/internal/utils/clock/manager.go b/internal/utils/clock/manager.go index d2fdcf1..43d845d 100644 --- a/internal/utils/clock/manager.go +++ b/internal/utils/clock/manager.go @@ -39,6 +39,7 @@ func init() { } type ClockManager struct { + lastFailAt int64 } func NewClockManager() *ClockManager { @@ -51,7 +52,13 @@ func (this *ClockManager) Start() { for range ticker.C { err := this.Sync() if err != nil { - remotelogs.Warn("CLOCK", "sync clock failed: "+err.Error()) + var currentTimestamp = time.Now().Unix() + + // 每天只提醒一次错误 + if currentTimestamp-this.lastFailAt > 86400 { + remotelogs.Warn("CLOCK", "sync clock failed: "+err.Error()) + this.lastFailAt = currentTimestamp + } } } } @@ -118,7 +125,7 @@ func (this *ClockManager) syncNtpdate(ntpdate string, server string) error { return nil } -// 参考自:https://medium.com/learning-the-go-programming-language/lets-make-an-ntp-client-in-go-287c4b9a969f +// ReadServer 参考自:https://medium.com/learning-the-go-programming-language/lets-make-an-ntp-client-in-go-287c4b9a969f func (this *ClockManager) ReadServer(server string) (time.Time, error) { conn, err := net.Dial("udp", server+":123") if err != nil {