import { DashboardChart } from "@/modules/dashboard/components/dashboard.chart"; import { ResponsiveContainer, PieChart, Pie, Cell, Tooltip, Legend, } from "recharts"; const generateTimeData = (count: number, base: number, variance: number) => { const data = []; const now = new Date(); for (let i = count - 1; i >= 0; i--) { const time = new Date(now.getTime() - i * 60000); const h = time.getHours().toString().padStart(2, "0"); const m = time.getMinutes().toString().padStart(2, "0"); data.push({ timestamp: `${h}:${m}`, value: Math.round( base + Math.sin(i / 3) * variance + Math.random() * variance * 0.5, ), }); } return data; }; const cpuData = generateTimeData(20, 45, 25).map((d, i) => ({ timestamp: d.timestamp, "Использование %": d.value, })); const ramData = generateTimeData(20, 60, 15).map((d) => ({ timestamp: d.timestamp, "Использовано ГБ": d.value / 10, "Свободно ГБ": 16 - d.value / 10, })); const diskData = generateTimeData(20, 70, 5).map((d) => ({ timestamp: d.timestamp, "Занято ГБ": d.value, })); const networkData = generateTimeData(20, 50, 30).map((d) => ({ timestamp: d.timestamp, "Входящий Мбит/с": d.value, "Исходящий Мбит/с": Math.round(d.value * 0.4), })); const metricData = [ { name: "INFO", value: 125 }, { name: "WARN", value: 42 }, { name: "ERROR", value: 18 }, { name: "CRITICAL", value: 5 }, ]; export const DashboardPage = () => { return (

Мониторинг системы

{/* Центр: Метрика логов — круговая диаграмма */}

Метрики логов

{metricData.map((entry, index) => ( ))}
{/* Верхний ряд: CPU + RAM */}
{/* Нижний ряд: Диск + Сеть */}
); };