文件职责
日志路径配置模块,负责确定和创建日志文件存储目录,适配不同的运行环境。
实现方式
使用 Electron API 和 Node.js模块 确定日志目录:
- 通过 app.getPath('userData') 获取用户数据目录
- 使用 ES Module 兼容性工具(fileURLToPath、createRequire)
- 自动创建日志目录(如果不存在)
实现思路
- 环境适配:检测是否在PKG打包环境或Electron环境
- 路径计算:使用Electron的userData路径作为日志根目录
- 目录初始化:模块加载时自动创建logs子目录
- 错误处理:创建目录失败时输出错误信息但不中断程序
边界
输入边界
- Electron app对象:提供系统路径API
- 环境变量:process.pkg、process.versions.electron
输出边界
- LOG_DIR: 日志目录的绝对路径(字符串)
- 副作用:创建物理目录
职责边界
- ✅ 负责:路径计算、目录创建、环境检测
- ❌ 不负责:日志文件写入、日志内容处理、文件清理
涉及概念
- Electron App:Electron应用主进程对象
- userData Path:用户数据目录(系统级应用数据存储位置)
- ES Modules:ECMAScript模块系统
- CommonJS Require:传统Node.js模块系统
- createRequire:ES Module中创建require函数
- fileURLToPath:将file: URL转换为文件路径
- import.meta.url:当前模块的URL
- process.pkg:pkg打包工具的标识
- process.versions:Node.js版本信息对象
- Recursive Directory Creation:递归创建目录
- File System (fs):文件系统操作