@@ -112,10 +112,11 @@ func (i *imlMonitorStatisticModule) AIChartOverview(ctx context.Context, service
112112 if avgRequestPerSubscriber > result .MaxRequestPerSubscriber {
113113 result .MaxRequestPerSubscriber = avgRequestPerSubscriber
114114 }
115+ if result .MinRequestPerSubscriber == 0 || result .MinRequestPerSubscriber > avgRequestPerSubscriber {
116+ result .MinRequestPerSubscriber = avgRequestPerSubscriber
117+ }
115118 }
116- if result .MinRequestPerSubscriber == 0 || result .MinRequestPerSubscriber > avgRequestPerSubscriber {
117- result .MinRequestPerSubscriber = avgRequestPerSubscriber
118- }
119+
119120 result .AvgRequestPerSubscriberOverview = append (result .AvgRequestPerSubscriberOverview , avgRequestPerSubscriber )
120121 result .RequestOverview = append (result .RequestOverview , & monitor_dto.StatusCodeOverview {
121122 Status2xx : item .Status2xx ,
@@ -179,9 +180,9 @@ func (i *imlMonitorStatisticModule) AIChartOverview(ctx context.Context, service
179180 if avgTotalPerSubscriber > result .MaxTokenPerSubscriber {
180181 result .MaxTokenPerSubscriber = avgTotalPerSubscriber
181182 }
182- }
183- if result .MinTokenPerSubscriber == 0 || result . MinTokenPerSubscriber > avgTotalPerSubscriber {
184- result . MinTokenPerSubscriber = avgTotalPerSubscriber
183+ if result . MinTokenPerSubscriber == 0 || result . MinTokenPerSubscriber > avgTotalPerSubscriber {
184+ result .MinTokenPerSubscriber = avgTotalPerSubscriber
185+ }
185186 }
186187
187188 result .AvgTokenPerSubscriberOverview = append (result .AvgTokenPerSubscriberOverview , & monitor_dto.TokenFloatOverview {
@@ -221,7 +222,8 @@ func (i *imlMonitorStatisticModule) AIChartOverview(ctx context.Context, service
221222 if maxTokenPerSecond < p {
222223 maxTokenPerSecond = p
223224 }
224- if minTokenPerSecond == 0 || minTokenPerSecond > p {
225+
226+ if p > 0 && (minTokenPerSecond == 0 || minTokenPerSecond > p ) {
225227 minTokenPerSecond = p
226228 }
227229 }
@@ -272,11 +274,11 @@ func (i *imlMonitorStatisticModule) RestChartOverview(ctx context.Context, servi
272274 if avgRequestPerSubscriber > result .MaxRequestPerSubscriber {
273275 result .MaxRequestPerSubscriber = avgRequestPerSubscriber
274276 }
275-
276- }
277- if result .MinRequestPerSubscriber == 0 || avgRequestPerSubscriber < result .MinRequestPerSubscriber {
278- result .MinRequestPerSubscriber = avgRequestPerSubscriber
277+ if result .MinRequestPerSubscriber == 0 || avgRequestPerSubscriber < result .MinRequestPerSubscriber {
278+ result .MinRequestPerSubscriber = avgRequestPerSubscriber
279+ }
279280 }
281+
280282 result .AvgRequestPerSubscriberOverview = append (result .AvgRequestPerSubscriberOverview , avgRequestPerSubscriber )
281283 result .RequestOverview = append (result .RequestOverview , & monitor_dto.StatusCodeOverview {
282284 Status2xx : item .Status2xx ,
@@ -300,10 +302,18 @@ func (i *imlMonitorStatisticModule) RestChartOverview(ctx context.Context, servi
300302 errChan <- err
301303 return
302304 }
305+ for _ , item := range items {
306+ if item > result .MaxResponseTime {
307+ result .MaxResponseTime = item
308+ }
309+ if result .MinResponseTime == 0 || item < result .MinResponseTime {
310+ result .MinResponseTime = item
311+ }
312+ }
303313 result .AvgResponseTimeOverview = items
304314 result .AvgResponseTime = summary .Avg
305- result .MaxResponseTime = summary .Max
306- result .MinResponseTime = summary .Min
315+ // result.MaxResponseTime = summary.Max
316+ // result.MinResponseTime = summary.Min
307317 }()
308318
309319 go func () {
@@ -330,11 +340,12 @@ func (i *imlMonitorStatisticModule) RestChartOverview(ctx context.Context, servi
330340 if avgTrafficPerSubscriber > result .MaxTrafficPerSubscriber {
331341 result .MaxTrafficPerSubscriber = avgTrafficPerSubscriber
332342 }
343+ if result .MinTrafficPerSubscriber == 0 || result .MinTrafficPerSubscriber > avgTrafficPerSubscriber {
344+ result .MinTrafficPerSubscriber = avgTrafficPerSubscriber
345+ }
333346
334347 }
335- if result .MinTrafficPerSubscriber == 0 || result .MinTrafficPerSubscriber > avgTrafficPerSubscriber {
336- result .MinTrafficPerSubscriber = avgTrafficPerSubscriber
337- }
348+
338349 result .AvgTrafficPerSubscriberOverview = append (result .AvgTrafficPerSubscriberOverview , avgTrafficPerSubscriber )
339350 }
340351 result .TrafficTotal = summary .StatusTotal
@@ -569,6 +580,10 @@ func (i *imlMonitorStatisticModule) SubscriberStatistics(ctx context.Context, in
569580 if err != nil {
570581 return nil , err
571582 }
583+ apps = append (apps , & service.Service {
584+ Id : "apipark-global" ,
585+ Name : "System Consumer" ,
586+ })
572587 appIds := utils .SliceToSlice (apps , func (p * service.Service ) string {
573588 return p .Id
574589 })
@@ -777,18 +792,27 @@ func (i *imlMonitorStatisticModule) statisticOnApi(ctx context.Context, clusterI
777792 if err != nil {
778793 return nil , err
779794 }
780- var service []* service.Service
795+ var services []* service.Service
781796 switch groupBy {
782797 case "app" :
783- service , err = i .serviceService .AppList (ctx )
798+ services , err = i .serviceService .AppList (ctx )
799+ if err != nil {
800+ return nil , err
801+ }
802+ services = append (services , & service.Service {
803+ Id : "apipark-global" ,
804+ Name : "System Consumer" ,
805+ })
806+
784807 case "provider" :
785- service , err = i .serviceService .ServiceList (ctx )
808+ services , err = i .serviceService .ServiceList (ctx )
809+ if err != nil {
810+ return nil , err
811+ }
812+
786813 default :
787814 return nil , errors .New ("invalid group by" )
788815 }
789- if err != nil {
790- return nil , err
791- }
792816
793817 wheres , err := i .genCommonWheres (ctx , clusterId )
794818 if err != nil {
@@ -806,7 +830,7 @@ func (i *imlMonitorStatisticModule) statisticOnApi(ctx context.Context, clusterI
806830 }
807831
808832 result := make ([]* monitor_dto.ServiceStatisticBasicItem , 0 , len (statisticMap ))
809- for _ , item := range service {
833+ for _ , item := range services {
810834
811835 statisticItem := & monitor_dto.ServiceStatisticBasicItem {
812836 Id : item .Id ,
@@ -872,17 +896,21 @@ func (i *imlMonitorStatisticModule) ApiStatisticsOnSubscriber(ctx context.Contex
872896 if err != nil {
873897 return nil , err
874898 }
875- // 根据订阅ID查询订阅的服务列表
876- subscriptions , err := i .subscribeService .MySubscribeServices (ctx , subscriberId , nil )
877- if err != nil {
878- return nil , err
879- }
880- serviceIds := utils .SliceToSlice (subscriptions , func (t * subscribe.Subscribe ) string {
881- return t .Service
882- })
883- if len (serviceIds ) < 1 {
884- return nil , nil
899+ serviceIds := make ([]string , 0 )
900+ if subscriberId != "apipark-global" {
901+ // 根据订阅ID查询订阅的服务列表
902+ subscriptions , err := i .subscribeService .MySubscribeServices (ctx , subscriberId , nil )
903+ if err != nil {
904+ return nil , err
905+ }
906+ serviceIds = utils .SliceToSlice (subscriptions , func (t * subscribe.Subscribe ) string {
907+ return t .Service
908+ })
909+ if len (serviceIds ) < 1 {
910+ return nil , nil
911+ }
885912 }
913+
886914 apiInfos , err := i .apiService .ListInfoForServices (ctx , serviceIds ... )
887915 if err != nil {
888916 return nil , err
0 commit comments