mirror of
https://github.com/lollipopkit/flutter_server_box.git
synced 2025-12-17 15:24:35 +01:00
Re-add try catch for getting status func.
This commit is contained in:
@@ -35,11 +35,6 @@ class ServerStatus {
|
||||
late List<DiskInfo?> disk;
|
||||
late TcpStatus tcp;
|
||||
|
||||
ServerStatus(
|
||||
this.cpu2Status,
|
||||
this.memList,
|
||||
this.sysVer,
|
||||
this.uptime,
|
||||
this.disk,
|
||||
this.tcp);
|
||||
ServerStatus(this.cpu2Status, this.memList, this.sysVer, this.uptime,
|
||||
this.disk, this.tcp);
|
||||
}
|
||||
|
||||
@@ -73,7 +73,7 @@ class ServerProvider extends BusyProvider {
|
||||
}
|
||||
return;
|
||||
}
|
||||
|
||||
try {
|
||||
await Future.wait(_servers.map((s) async {
|
||||
final idx = _servers.indexOf(s);
|
||||
final status = await _getData(s.info, idx);
|
||||
@@ -82,6 +82,9 @@ class ServerProvider extends BusyProvider {
|
||||
notifyListeners();
|
||||
}
|
||||
}));
|
||||
} catch (e) {
|
||||
rethrow;
|
||||
}
|
||||
}
|
||||
|
||||
Future<void> startAutoRefresh() async {
|
||||
@@ -136,7 +139,7 @@ class ServerProvider extends BusyProvider {
|
||||
logger.warning(e);
|
||||
}
|
||||
}
|
||||
|
||||
try {
|
||||
final cpu = await client.execute("cat /proc/stat | grep cpu") ?? '';
|
||||
final mem = await client.execute('free -m') ?? '';
|
||||
final sysVer = await client.execute('cat /etc/issue.net') ?? '';
|
||||
@@ -151,6 +154,12 @@ class ServerProvider extends BusyProvider {
|
||||
_getUpTime(upTime),
|
||||
_getDisk(disk),
|
||||
_getTcp(tcp));
|
||||
} catch (e) {
|
||||
_servers[idx].connectionState = ServerConnectionState.failed;
|
||||
notifyListeners();
|
||||
logger.warning(e);
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
Cpu2Status _getCPU(String raw, Cpu2Status old) {
|
||||
|
||||
@@ -14,6 +14,14 @@ class ServerDetailPage extends StatefulWidget {
|
||||
}
|
||||
|
||||
class _ServerDetailPageState extends State<ServerDetailPage> {
|
||||
late MediaQueryData _media;
|
||||
|
||||
@override
|
||||
void didChangeDependencies() {
|
||||
super.didChangeDependencies();
|
||||
_media = MediaQuery.of(context);
|
||||
}
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
return Consumer<ServerProvider>(builder: (_, provider, __) {
|
||||
@@ -34,11 +42,14 @@ class _ServerDetailPageState extends State<ServerDetailPage> {
|
||||
}
|
||||
|
||||
Widget _buildCPUView(ServerStatus ss) {
|
||||
return ListView.builder(
|
||||
return ConstrainedBox(
|
||||
constraints: BoxConstraints(maxHeight: _media.size.height * 0.3),
|
||||
child: ListView.builder(
|
||||
itemBuilder: (ctx, idx) {
|
||||
return Text('$idx ${ss.cpu2Status.usedPercent(coreIdx: idx)}');
|
||||
},
|
||||
itemCount: ss.cpu2Status.now.length,
|
||||
),
|
||||
);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user