From 55deee8fea48a45638baaeb0c5d376564db29476 Mon Sep 17 00:00:00 2001 From: GoEdgeLab Date: Thu, 2 Nov 2023 17:23:39 +0800 Subject: [PATCH] =?UTF-8?q?=E4=B8=8A=E4=BC=A0=E5=9F=9F=E5=90=8D=E7=BB=9F?= =?UTF-8?q?=E8=AE=A1=E6=97=B6=EF=BC=8C=E9=99=90=E5=88=B6=E5=9F=9F=E5=90=8D?= =?UTF-8?q?=E9=95=BF=E5=BA=A6=E4=B8=8D=E8=83=BD=E8=B6=85=E8=BF=8764?= =?UTF-8?q?=E4=BD=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- internal/stats/traffic_stat_manager.go | 34 ++++++++++++++------------ 1 file changed, 18 insertions(+), 16 deletions(-) diff --git a/internal/stats/traffic_stat_manager.go b/internal/stats/traffic_stat_manager.go index d171df9..3700aef 100644 --- a/internal/stats/traffic_stat_manager.go +++ b/internal/stats/traffic_stat_manager.go @@ -142,24 +142,26 @@ func (this *TrafficStatManager) Add(userId int64, serverId int64, domain string, item.PlanId = planId // 单个域名流量 - var domainKey = types.String(timestamp) + "@" + domain - serverDomainMap, ok := this.domainsMap[serverId] - if !ok { - serverDomainMap = map[string]*TrafficItem{} - this.domainsMap[serverId] = serverDomainMap - } + if len(domain) <= 64 { + var domainKey = types.String(timestamp) + "@" + domain + serverDomainMap, ok := this.domainsMap[serverId] + if !ok { + serverDomainMap = map[string]*TrafficItem{} + this.domainsMap[serverId] = serverDomainMap + } - domainItem, ok := serverDomainMap[domainKey] - if !ok { - domainItem = &TrafficItem{} - serverDomainMap[domainKey] = domainItem + domainItem, ok := serverDomainMap[domainKey] + if !ok { + domainItem = &TrafficItem{} + serverDomainMap[domainKey] = domainItem + } + domainItem.Bytes += bytes + domainItem.CachedBytes += cachedBytes + domainItem.CountRequests += countRequests + domainItem.CountCachedRequests += countCachedRequests + domainItem.CountAttackRequests += countAttacks + domainItem.AttackBytes += attackBytes } - domainItem.Bytes += bytes - domainItem.CachedBytes += cachedBytes - domainItem.CountRequests += countRequests - domainItem.CountCachedRequests += countCachedRequests - domainItem.CountAttackRequests += countAttacks - domainItem.AttackBytes += attackBytes this.locker.Unlock() }