blob: 22047e28358423d3da118cace4da27348fa85ae7 [file] [log] [blame]
TRM-codingd1cbf672025-06-18 15:15:08 +08001import React, { useEffect, useState } from 'react';
TRM-coding85e5c322025-06-18 19:49:21 +08002import { NavLink, Outlet } from 'react-router-dom';
TRM-codingd1cbf672025-06-18 15:15:08 +08003import '../style/Admin.css';
4
5function LogsDashboard() {
6 const [logs, setLogs] = useState([]);
7 const [stats, setStats] = useState({});
8
9 useEffect(() => {
10 fetch('/api/logs')
11 .then(res => res.json())
12 .then(setLogs)
13 .catch(console.error);
14 fetch('/api/stats')
15 .then(res => res.json())
16 .then(setStats)
17 .catch(console.error);
18 }, []);
19
20 return (
21 <div className="admin-container">
22 <h2>运行日志 & 性能 Dashboard</h2>
TRM-coding85e5c322025-06-18 19:49:21 +080023 <nav className="dashboard-nav">
24 <NavLink to="transactions" className={({ isActive }) => isActive ? 'active' : ''}>
25 事务日志
26 </NavLink>
27 <NavLink to="performance" className={({ isActive }) => isActive ? 'active' : ''}>
28 性能日志
29 </NavLink>
30 </nav>
31
32 {/* nested routes will render here */}
33 <Outlet />
TRM-codingd1cbf672025-06-18 15:15:08 +080034 </div>
35 );
36}
37
38export default LogsDashboard;