بنقرة واحدة
performance-monitoring-system
全栈性能监测系统。提供 IPC 命令计时、路由导航计时、后端命令执行统计、实时图表展示和日志查看。当需要分析性能瓶颈、监测命令耗时、查看请求统计或调试慢操作时使用此技能。
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
القائمة
全栈性能监测系统。提供 IPC 命令计时、路由导航计时、后端命令执行统计、实时图表展示和日志查看。当需要分析性能瓶颈、监测命令耗时、查看请求统计或调试慢操作时使用此技能。
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
استنادا إلى تصنيف SOC المهني
| name | performance-monitoring-system |
| description | 全栈性能监测系统。提供 IPC 命令计时、路由导航计时、后端命令执行统计、实时图表展示和日志查看。当需要分析性能瓶颈、监测命令耗时、查看请求统计或调试慢操作时使用此技能。 |
性能监测系统提供全栈性能数据收集与可视化,包括前端 IPC 调用计时、路由导航计时、后端命令执行统计,以及实时图表和日志查看功能。
核心特点:
[Rust 命令执行] → [PerfCollector (内存)] → [Tauri 命令暴露]
↓
[前端 invokeCommand 计时] → [usePerformanceStore] → [PerformanceMonitor.vue]
[Vue Router 导航计时] ↗ (卡片 + 图表 + 表格)
文件: src/stores/usePerformanceStore.ts
import { usePerformanceStore } from '@/stores/usePerformanceStore'
const perfStore = usePerformanceStore()
// 开始/停止监测
perfStore.startMonitoring()
perfStore.stopMonitoring()
// 清除数据
perfStore.clearAllData()
// 导出数据
perfStore.exportData()
// 计算属性
perfStore.frontendSummary // { total, avgDuration, p95, maxDuration, slowCount, errorRate }
perfStore.logEntries // 合并 invoke + navigation 记录
perfStore.commandDistribution // 命令分组统计
perfStore.timelineBuckets // 10秒粒度时间线数据
文件: src/api/tauri.ts
import { usePerformanceStoreRaw } from '@/stores/usePerformanceStore'
const perfStore = usePerformanceStoreRaw() // 单例,可在 Vue setup 外使用
if (perfStore.isMonitoring) {
perfStore.recordInvoke({ command, duration, success, error, timestamp })
}
文件: src/views/PerformanceMonitor.vue
路由: /performance
功能:
文件: src-tauri/src/services/perf_service.rs
pub struct PerfCollector {
pub enabled: Mutex<bool>, // 默认 false
pub records: Mutex<Vec<PerfRecord>>, // 上限 5000
pub max_records: usize,
}
pub struct PerfRecord {
pub command: String,
pub duration_ms: f64,
pub timestamp: String, // ISO 8601
pub success: bool,
pub error: Option<String>,
pub phases: Option<Vec<PerfPhase>>, // 大操作子阶段
}
方法:
is_enabled() - 检查是否启用set_enabled(bool) - 设置启用状态record(PerfRecord) - 记录一条性能数据get_records(limit, filter) - 获取记录clear() - 清空记录summary() - 获取统计摘要文件: src-tauri/src/commands/perf_commands.rs
| 命令 | 参数 | 返回值 |
|---|---|---|
get_perf_records | limit: u32, command_filter: Option<String> | Vec<PerfRecord> |
get_perf_summary | - | PerfSummary |
toggle_perf_monitoring | enabled: bool | bool |
clear_perf_records | - | bool |
文件: src-tauri/src/commands/save_commands.rs
pub struct AppState {
pub db: Arc<RwLock<Option<DatabaseManager>>>,
pub current_save_id: Arc<RwLock<Option<String>>>,
pub perf: PerfCollector, // 性能收集器
}
在需要监测的命令中添加:
use crate::services::perf_service::PerfRecord;
#[tauri::command]
pub async fn some_command(state: State<'_, AppState>) -> Result<...> {
let start = std::time::Instant::now();
let mut success = true;
let mut error_msg = None;
let result = // ... 执行逻辑 ...
if state.perf.is_enabled() {
state.perf.record(PerfRecord {
command: "some_command".to_string(),
duration_ms: start.elapsed().as_secs_f64() * 1000.0,
timestamp: chrono::Utc::now().to_rfc3339(),
success,
error: error_msg,
phases: None,
});
}
result
}
| 系统 | 存储方式 | 用途 |
|---|---|---|
| 日志系统 | 文件持久化 | 应用运行日志、错误追踪 |
| 性能监测 | 内存临时存储 | 实时性能分析、用户主动查看 |
如需将性能数据写入日志,在 perf_service.rs 的 record() 中添加:
tracing::debug!(command = %record.command, duration_ms = record.duration_ms, "性能记录");
| 文件 | 说明 |
|---|---|
src/stores/usePerformanceStore.ts | 前端性能数据 Store |
src/views/PerformanceMonitor.vue | 性能监测页面 |
src/api/tauri.ts | IPC 调用计时拦截 |
src/router/index.ts | 路由导航计时 |
src-tauri/src/services/perf_service.rs | 后端性能收集器 |
src-tauri/src/commands/perf_commands.rs | 后端性能命令 |
电竞经理游戏的数据中心系统。管理选手赛季统计、影响力排行、赛事表现记录、身价变化追踪。当需要修改统计计算、排行榜逻辑、年度评分时使用此技能。
电竞经理游戏的金额单位规范。全项目金额统一以「元」存储和传递,前端使用 formatMoney 系列函数格式化显示。当需要新增金额相关计算、修改身价/薪资/奖金/赞助公式、添加新的金额字段、或排查金额显示异常时使用此技能。
电竞经理游戏的版本更新(Meta)系统。管理20种Meta版本、位置权重、加权战力计算、赛季版本轮换。当需要修改Meta配置、位置权重、战力计算公式、版本轮换规则时使用此技能。
电竞经理游戏的选手系统。管理选手属性、成长曲线、忠诚度、满意度、身价计算。当需要修改选手属性、成长规则、身价公式、忠诚度机制时使用此技能。
电竞经理游戏的时间推进系统。管理赛季阶段、比赛模拟、赛季结算等核心游戏流程。当需要修改游戏进度、阶段推进、比赛模拟逻辑时使用此技能。
电竞经理游戏的选手特性系统。管理14种选手特性的定义、触发条件、修正计算、随机生成、互斥规则。特性影响比赛模拟中选手的ability/stability/condition。当需要修改特性效果、添加新特性、调整触发条件、修改生成规则时使用此技能。