From f84bd6a1e8c09e80cd91999e066ebdf4d301749d Mon Sep 17 00:00:00 2001 From: yusing Date: Fri, 14 Feb 2025 01:57:26 +0800 Subject: [PATCH] fix 5m period, fix websocket not responding on no data --- internal/metrics/period/handler.go | 3 --- internal/metrics/period/period.go | 1 + 2 files changed, 1 insertion(+), 3 deletions(-) diff --git a/internal/metrics/period/handler.go b/internal/metrics/period/handler.go index a5e2892..9bff64f 100644 --- a/internal/metrics/period/handler.go +++ b/internal/metrics/period/handler.go @@ -71,9 +71,6 @@ func (p *Poller[T, AggregateT]) getRespData(r *http.Request) (any, error) { return nil, errors.New("invalid period") } rangeData := p.Get(periodFilter) - if len(rangeData) == 0 { - return nil, nil - } if p.aggregator != nil { total, aggregated := p.aggregator(rangeData, query) return map[string]any{ diff --git a/internal/metrics/period/period.go b/internal/metrics/period/period.go index 6f0bede..9936a45 100644 --- a/internal/metrics/period/period.go +++ b/internal/metrics/period/period.go @@ -38,6 +38,7 @@ func (p *Period[T]) Add(info *T) { p.mu.Lock() defer p.mu.Unlock() now := time.Now() + p.FiveMinutes.Add(now, info) p.FifteenMinutes.Add(now, info) p.OneHour.Add(now, info) p.OneDay.Add(now, info)