diff --git a/frontend/src/pages/analysis/index.tsx b/frontend/src/pages/analysis/index.tsx index 0090bba..d3156cf 100644 --- a/frontend/src/pages/analysis/index.tsx +++ b/frontend/src/pages/analysis/index.tsx @@ -19,9 +19,7 @@ import { useDailyVolume } from './hooks/useDailyVolume' import { useInView } from '@/hooks/useInView' import { compactNumber, formatBytes } from './components/chart-shared' import { TrendChart } from './components/TrendChart' -import { AppStreamChart } from './components/AppStreamChart' import { DailyVolumeChart } from './components/DailyVolumeChart' -import { NamespacePie } from './components/NamespacePie' import { TopAppsTable } from './components/TopAppsTable' import { IngressAnalysisSection } from './components/IngressAnalysisSection' @@ -149,6 +147,11 @@ const AnalysisPage = memo(function AnalysisPage() { start, end, namespace: scopedNamespace, + // 流图和 Top5 饼图已移除,按应用统计的重查询现在只服务「排行表」, + // 因此重新用可见性门控:页面打开只跑索引类查询(百毫秒), + // 用户滚到排行卡才发那条 10~15 秒的重查询。 + // 这是真正减少查询压力的一步——之前图在首屏,所以只能全量查。 + rankingEnabled: rankingView.inView, }) // 选择值与已生效值不一致 → 提示"点刷新生效" @@ -265,38 +268,23 @@ const AnalysisPage = memo(function AnalysisPage() { - - - -
- - - {t('trend.title')} -

{t('trend.subtitle')}

-
- -
- - - {t('pie.title')} -

{t('pie.subtitle')}

-
- - {/* 从"命名空间分布"改成"应用分布":命名空间只有 astralx/log 两个, - 看了没有信息量;按应用才看得出是谁在刷日志 */} - ({ name: app.app || t('table.untagged'), count: app.total }))} - /> - -
+ 0 ? `${data.stats.appCount} 个` : '—'} + icon={Boxes} + iconColor="text-primary" + iconBg="bg-primary/10" + />
+ {/* 「应用日志量 Top 5」饼图已移除:排行表里已有 排名/应用/命名空间/日志量/占比 + 五项信息,饼图属于同一组数据的重复呈现。 */} - {t('stream.title')} -

{t('stream.subtitle', { count: Math.min(data.apps.length, 10) })}

+ {t('trend.title')} +

{t('trend.subtitle')}

- +