加入指令数据统计,指令看板内容

This commit is contained in:
liuwei
2025-03-18 17:40:59 +08:00
parent 21f8fffca8
commit 1d7ee9f953
23 changed files with 2407 additions and 1 deletions

View File

@@ -0,0 +1,64 @@
-- 插件统计汇总表
CREATE TABLE IF NOT EXISTS t_plugin_stats (
id BIGINT PRIMARY KEY AUTO_INCREMENT,
plugin_name VARCHAR(50) NOT NULL COMMENT '插件名称',
command VARCHAR(50) NOT NULL COMMENT '触发的命令',
stat_date DATE NOT NULL COMMENT '统计日期',
total_calls INT NOT NULL DEFAULT 0 COMMENT '总调用次数',
success_calls INT NOT NULL DEFAULT 0 COMMENT '成功调用次数',
failed_calls INT NOT NULL DEFAULT 0 COMMENT '失败调用次数',
group_calls INT NOT NULL DEFAULT 0 COMMENT '群聊调用次数',
private_calls INT NOT NULL DEFAULT 0 COMMENT '私聊调用次数',
avg_process_time FLOAT NOT NULL DEFAULT 0 COMMENT '平均处理时间(毫秒)',
created_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
updated_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
UNIQUE KEY uk_plugin_command_date (plugin_name, command, stat_date),
INDEX idx_stat_date (stat_date)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='插件统计汇总表';
-- 用户使用统计表
CREATE TABLE IF NOT EXISTS t_user_stats (
id BIGINT PRIMARY KEY AUTO_INCREMENT,
user_id VARCHAR(50) NOT NULL COMMENT '用户ID',
plugin_name VARCHAR(50) NOT NULL COMMENT '插件名称',
command VARCHAR(50) NOT NULL COMMENT '触发的命令',
total_calls INT NOT NULL DEFAULT 0 COMMENT '总调用次数',
success_calls INT NOT NULL DEFAULT 0 COMMENT '成功调用次数',
failed_calls INT NOT NULL DEFAULT 0 COMMENT '失败调用次数',
first_used_at DATETIME NOT NULL COMMENT '首次使用时间',
last_used_at DATETIME NOT NULL COMMENT '最后使用时间',
UNIQUE KEY uk_user_plugin_command (user_id, plugin_name, command),
INDEX idx_user_id (user_id),
INDEX idx_last_used_at (last_used_at)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='用户使用统计表';
-- 群组使用统计表
CREATE TABLE IF NOT EXISTS t_group_stats (
id BIGINT PRIMARY KEY AUTO_INCREMENT,
group_id VARCHAR(50) NOT NULL COMMENT '群组ID',
plugin_name VARCHAR(50) NOT NULL COMMENT '插件名称',
command VARCHAR(50) NOT NULL COMMENT '触发的命令',
total_calls INT NOT NULL DEFAULT 0 COMMENT '总调用次数',
success_calls INT NOT NULL DEFAULT 0 COMMENT '成功调用次数',
failed_calls INT NOT NULL DEFAULT 0 COMMENT '失败调用次数',
unique_users INT NOT NULL DEFAULT 0 COMMENT '唯一用户数',
first_used_at DATETIME NOT NULL COMMENT '首次使用时间',
last_used_at DATETIME NOT NULL COMMENT '最后使用时间',
UNIQUE KEY uk_group_plugin_command (group_id, plugin_name, command),
INDEX idx_group_id (group_id),
INDEX idx_last_used_at (last_used_at)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='群组使用统计表';
-- 错误日志表
CREATE TABLE IF NOT EXISTS t_error_logs (
id BIGINT PRIMARY KEY AUTO_INCREMENT,
plugin_name VARCHAR(50) NOT NULL COMMENT '插件名称',
command VARCHAR(50) NOT NULL COMMENT '触发的命令',
user_id VARCHAR(50) NOT NULL COMMENT '用户ID',
group_id VARCHAR(50) COMMENT '群组ID私聊为NULL',
error_message TEXT NOT NULL COMMENT '错误信息',
stack_trace TEXT COMMENT '堆栈跟踪',
created_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
INDEX idx_plugin_name (plugin_name),
INDEX idx_created_at (created_at)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='错误日志表';