Skip to content

Kecoya/DailyRoutine-Monitoring

Repository files navigation

系统监控与作息分析程序

功能特性

核心功能

  • 🚀 系统监控服务:开机自启动,实时监控系统活动
  • 📊 作息时间追踪:记录每日开机/关机时间,自动识别午休
  • 💼 忙碌度分析:监控鼠标、键盘、窗口活动,生成忙碌指数
  • 📈 统计报表:支持周报、月报,含热力图、趋势图等可视化图表
  • 🔒 隐私安全:所有数据本地存储,不上传云端

技术栈

  • Python 3.8+
  • SQLite 数据库
  • Flask Web框架
  • psutil 系统监控
  • pynput 输入设备监控
  • matplotlib/seaborn 数据可视化

安装说明

1. 安装依赖

pip install -r requirements.txt

2. 首次运行

python main.py

3. 设置开机自启动(Windows)

以管理员身份运行:

python setup_autostart.py

使用说明

启动监控服务

python main.py

监控服务将在后台运行,每分钟自动记录系统活动数据。

访问Web界面

打开浏览器访问:http://localhost:5000

可以查看:

  • 📅 今日实时数据
  • 📊 历史统计报表
  • 📈 忙碌度曲线图
  • 🗓️ 周报/月报分析
  • 📥 数据导出功能

数据说明

监控指标

  • 鼠标活动:移动距离、移动频率、点击次数
  • 键盘活动:打字速度、按键频率
  • 窗口管理:切换频率、活动窗口数量
  • 系统状态:CPU使用率、内存使用率

忙碌指数计算

综合考虑:

  • 鼠标移动速度和点击频率(权重30%)
  • 键盘打字速度(权重30%)
  • 窗口切换频率(权重20%)
  • 系统资源使用(权重20%)

作息分析

  • 每日最早开机时间
  • 每日最晚关机时间
  • 午休识别(连续30分钟无活动)
  • 有效工作时长统计

数据存储

所有数据存储在 data/activity.db SQLite数据库中,包含:

  • 活动记录表(每分钟一条记录)
  • 会话表(开机/关机记录)
  • 统计汇总表

隐私声明

本程序所有数据存储在本地,不会上传到任何服务器。您可以随时:

  • 查看原始数据(data/activity.db)
  • 导出数据为CSV/Excel格式
  • 删除历史数据

注意事项

  1. 首次运行会创建数据库文件
  2. 建议设置开机自启动以获得完整数据
  3. 程序会在系统托盘运行(最小化后不影响使用)
  4. 关机前会自动保存所有数据

故障排除

服务无法启动

  • 检查是否有权限问题
  • 确保端口5000未被占用
  • 查看日志文件 logs/monitor.log

数据不准确

  • 确保服务持续运行
  • 检查是否有多个实例运行
  • 重置数据库:删除 data/activity.db 后重启

开发计划

  • 支持多显示器监控
  • 添加应用程序使用时长统计
  • 支持自定义忙碌度计算规则
  • 移动端查看支持
  • 数据备份和恢复功能

许可证

MIT License


开发者: System Monitor Team
版本: 1.0.0
更新日期: 2025-10

About

分析我的研究生生活作息,生成统计报告。

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published