getAllStats method
获取所有性能统计
Implementation
Map<String, dynamic> getAllStats() {
final Map<String, dynamic> stats = <String, dynamic>{
'operations': <String, dynamic>{},
'timing': <String, dynamic>{},
};
// 操作统计
for (final String operationType in _operationCounts.keys) {
stats['operations'][operationType] = getOperationStats(operationType);
}
// 时间统计
if (_appStartTime != null) {
final DateTime now = DateTime.now();
stats['timing']['appStartToNowMs'] =
now.difference(_appStartTime!).inMilliseconds;
}
if (_databaseInitStartTime != null && _databaseInitEndTime != null) {
stats['timing']['databaseInitMs'] = _databaseInitEndTime!
.difference(_databaseInitStartTime!)
.inMilliseconds;
}
if (_appStartTime != null && _firstDatabaseOperationTime != null) {
stats['timing']['appStartToFirstDbOperationMs'] =
_firstDatabaseOperationTime!
.difference(_appStartTime!)
.inMilliseconds;
}
return stats;
}