# NAC自动日志总结功能 - 使用指南 **版本**: v1.0 **日期**: 2026-02-07 **功能**: 编译停止45分钟后自动生成每日工作日志 --- ## 📋 功能概述 NAC自动日志总结功能会在检测到编译停止超过45分钟后,自动生成当天的工作日志,包括: - Git提交记录 - 文件修改记录 - NAC Lint检查记录 - 新增的记忆记录(文档、问题、决策) - 统计信息和工作亮点 --- ## 🚀 快速开始 ### 方式1: 手动生成日志(测试) ```bash # 进入工作区 cd /home/ubuntu/nac-workspace # 生成今日工作日志 python3 memory/tools/summary_generator.py # 查看生成的报告 cat docs/Daily_Summary_$(date +%Y%m%d).md ``` ### 方式2: 启动守护进程(推荐) ```bash # 测试模式(2分钟超时) python3 memory/tools/auto_summary_daemon.py --test # 正常模式(45分钟超时) python3 memory/tools/auto_summary_daemon.py # 后台运行 nohup python3 memory/tools/auto_summary_daemon.py > /tmp/nac-daemon.log 2>&1 & ``` ### 方式3: 安装为系统服务 ```bash # 复制服务文件 sudo cp memory/tools/nac-auto-summary.service /etc/systemd/system/ # 启动服务 sudo systemctl daemon-reload sudo systemctl enable nac-auto-summary sudo systemctl start nac-auto-summary # 查看状态 sudo systemctl status nac-auto-summary # 查看日志 sudo journalctl -u nac-auto-summary -f ``` --- ## 📊 日志内容 ### 日志文件位置 ``` memory/summaries/SUMMARY_20260207.json # JSON格式总结 docs/Daily_Summary_20260207.md # Markdown格式报告 memory/logs/daemon.log # 守护进程日志 memory/logs/activity_20260207.log # 活动记录日志 ``` ### 日志内容示例 ```markdown # NAC工作日志 - 2026-02-07 ## 📊 今日统计 - Git提交: 5次 - 文件修改: 25个文件 - 代码变更: +500 -150行 - Lint检查: 3次 - 新增文档: 1个 - 新增问题: 2个 ## 📝 Git提交记录 ### [nac-blockchain] Implement CBPP consensus - 提交哈希: abc1234 - 作者: Developer - 时间: 2026-02-07 15:00:00 - 变更: +200 -50行 ## 🎯 总结 ✅ 完成 5 次代码提交 ✅ 新增 500 行代码 ✅ 记录 2 个问题和解决方案 ``` --- ## 🔧 配置选项 ### 命令行参数 ```bash python3 memory/tools/auto_summary_daemon.py \ --workspace /home/ubuntu/nac-workspace \ # 工作区路径 --timeout 2700 \ # 空闲超时(秒) --interval 60 \ # 检查间隔(秒) --test # 测试模式 ``` ### 配置文件(计划中) ```json { "idle_timeout": 2700, "check_interval": 60, "watch_projects": [ "nac-blockchain", "nac-asset-onchain", "nac-quantum-explorer" ], "watch_extensions": [".rs", ".go", ".charter"], "notification": { "enabled": true, "type": "console" } } ``` --- ## 🧪 测试 ### 测试1: 手动生成日志 ```bash cd /home/ubuntu/nac-workspace python3 memory/tools/summary_generator.py # 检查输出 ls -la memory/summaries/SUMMARY_*.json ls -la docs/Daily_Summary_*.md ``` ### 测试2: 活动监控 ```bash # 运行活动监控器 python3 memory/tools/activity_monitor.py # 输出示例: # NAC Activity Monitor # 工作区: /home/ubuntu/nac-workspace # 空闲超时: 60秒 # # 今日活动统计: # 总活动数: 5 # 文件修改: 2次 (10个文件) # Git提交: 1次 (3个提交) # Lint检查: 2次 ``` ### 测试3: 守护进程(测试模式) ```bash # 启动测试模式(2分钟超时) python3 memory/tools/auto_summary_daemon.py --test # 模拟编译活动 touch nac-blockchain/src/test.rs # 等待2分钟,观察是否自动生成日志 ``` --- ## 📈 工作流程 ### 典型的一天 ``` 09:00 - 开始工作 ↓ 09:30 - 修改代码,提交Git ↓ (守护进程检测到活动,重置计时器) 12:00 - 午休 ↓ 13:00 - 继续工作,修改代码 ↓ (守护进程检测到活动,重置计时器) 17:30 - 结束工作 ↓ 18:15 - 空闲超过45分钟 ↓ (守护进程自动生成日志) ✅ 日志已生成: docs/Daily_Summary_20260207.md ``` ### 活动检测 守护进程会检测以下活动: 1. **文件修改** - 通过`git status`检测 2. **Git提交** - 通过`git log`检测 3. **Lint检查** - 通过日志文件检测 任何活动都会重置45分钟计时器。 --- ## 🔔 通知方式 ### 当前支持 - ✅ 控制台输出 - ✅ 日志文件记录 ### 计划支持 - ⏳ 桌面通知 - ⏳ 邮件通知 - ⏳ Webhook通知 --- ## 🛠️ 故障排除 ### 问题1: 守护进程无法启动 ```bash # 检查Python版本 python3 --version # 检查文件权限 ls -la memory/tools/auto_summary_daemon.py # 手动运行查看错误 python3 memory/tools/auto_summary_daemon.py --test ``` ### 问题2: 日志未生成 ```bash # 检查守护进程状态 ps aux | grep auto_summary_daemon # 查看守护进程日志 cat memory/logs/daemon.log # 检查空闲时间 python3 memory/tools/activity_monitor.py ``` ### 问题3: Git命令失败 ```bash # 确保在Git仓库中 cd nac-blockchain git status # 检查Git配置 git config --list ``` --- ## 📝 最佳实践 ### 1. 每日查看日志 ```bash # 每天早上查看昨日日志 cat docs/Daily_Summary_$(date -d yesterday +%Y%m%d).md ``` ### 2. 定期备份日志 ```bash # 每周备份日志 tar -czf logs_backup_$(date +%Y%m%d).tar.gz \ memory/summaries/ \ docs/Daily_Summary_*.md ``` ### 3. 分析工作效率 ```bash # 查看本周的提交统计 for i in {0..6}; do date=$(date -d "$i days ago" +%Y%m%d) if [ -f "memory/summaries/SUMMARY_$date.json" ]; then echo "=== $date ===" cat "memory/summaries/SUMMARY_$date.json" | \ python3 -c "import sys, json; data=json.load(sys.stdin); print(f\"提交: {data['statistics']['total_commits']}, 代码: +{data['statistics']['total_lines_added']} -{data['statistics']['total_lines_deleted']}\")" fi done ``` --- ## 🚀 高级用法 ### 自定义总结模板 编辑 `summary_generator.py` 中的 `generate_markdown_report` 方法,自定义报告格式。 ### 集成到其他系统 ```python from summary_generator import SummaryGenerator # 生成总结 generator = SummaryGenerator('/home/ubuntu/nac-workspace') summary, markdown = generator.generate_summary() # 发送到其他系统 # send_to_slack(markdown) # send_to_email(markdown) # save_to_database(summary) ``` ### 定时生成周报/月报 ```bash # 添加到crontab crontab -e # 每周一早上9点生成周报 0 9 * * 1 /home/ubuntu/nac-workspace/memory/tools/generate_weekly_report.sh ``` --- ## 📞 技术支持 ### 相关文档 - **设计文档**: `memory/tools/AUTO_SUMMARY_DESIGN.md` - **活动监控器**: `memory/tools/activity_monitor.py` - **总结生成器**: `memory/tools/summary_generator.py` - **守护进程**: `memory/tools/auto_summary_daemon.py` ### 日志文件 - **守护进程日志**: `memory/logs/daemon.log` - **活动日志**: `memory/logs/activity_YYYYMMDD.log` - **Lint日志**: `memory/logs/lint_YYYYMMDD.log` --- ## ✅ 检查清单 ### 安装检查 - [ ] Python 3.8+已安装 - [ ] 工作区路径正确 - [ ] 文件权限正确(可执行) - [ ] 目录结构完整 ### 功能检查 - [ ] 手动生成日志成功 - [ ] 活动监控正常 - [ ] 守护进程可启动 - [ ] 日志文件正确生成 ### 部署检查 - [ ] 系统服务已安装(如果需要) - [ ] 服务自动启动 - [ ] 日志正常记录 - [ ] 通知正常工作(如果启用) --- **NAC自动日志总结功能已准备就绪!** 🎉 *每天工作结束后,系统会自动为您生成详细的工作日志,让您清楚了解每天的工作成果。*