fix(access-logs): 修复状态码自定义

This commit is contained in:
ryan
2026-08-13 11:29:15 +08:00
parent a4dd5ca9e1
commit 465440fa5b
7 changed files with 120 additions and 246 deletions
@@ -1,60 +0,0 @@
'use client';
import { Globe2 } from 'lucide-react';
import {
Card,
CardContent,
CardDescription,
CardHeader,
CardTitle,
} from '@/components/ui/card';
import { Progress } from '@/components/ui/progress';
import type { DistributionItem } from '@/lib/services/openflare';
import { formatCompactNumber } from './dashboard-utils';
export function GeoDistributionList({ items }: { items: DistributionItem[] }) {
const sortedItems = [...items]
.sort((left, right) => right.value - left.value)
.slice(0, 8);
const maxValue = sortedItems[0]?.value ?? 0;
return (
<Card className='border-dashed shadow-none'>
<CardHeader>
<CardTitle className='text-sm font-semibold flex items-center gap-1.5'>
<Globe2 className='size-4 text-primary' />
来源国家分布
</CardTitle>
<CardDescription className='text-xs'>
聚合最近 24 小时主要来源国家。
</CardDescription>
</CardHeader>
<CardContent>
{sortedItems.length === 0 ? (
<div className='flex min-h-[180px] items-center justify-center text-xs text-muted-foreground'>
暂无来源分布数据
</div>
) : (
<div className='space-y-3'>
{sortedItems.map((item) => {
const ratio = maxValue > 0 ? (item.value / maxValue) * 100 : 0;
return (
<div key={item.key} className='space-y-1.5'>
<div className='flex items-center justify-between text-xs'>
<span className='font-medium'>{item.key || '未知'}</span>
<span className='font-mono tabular-nums text-muted-foreground'>
{formatCompactNumber(item.value)}
</span>
</div>
<Progress value={ratio} className='h-1.5' />
</div>
);
})}
</div>
)}
</CardContent>
</Card>
);
}
@@ -7,11 +7,7 @@ import type {
NetworkTrendPoint,
} from '@/lib/services/openflare';
import {
formatBytes,
formatPercent,
formatTrendHour,
} from './dashboard-utils';
import { formatBytes, formatPercent, formatTrendHour } from './dashboard-utils';
/** 业务流量(来自访问日志)与容量趋势(节点 Agent 宿主机指标)合并展示。 */
export function TrafficCapacityTrendChart({