Selaa lähdekoodia

feat(logging): unify log path to userData directory across windows, mac and linux

sw 4 viikkoa sitten
vanhempi
commit
bc89194fab
1 muutettua tiedostoa jossa 9 lisäystä ja 14 poistoa
  1. 9 14
      src/log/log-path.js

+ 9 - 14
src/log/log-path.js

@@ -13,19 +13,14 @@ const IS_PKG      = process.pkg !== undefined;
 const IS_ELECTRON = process.versions && process.versions.electron;
 
 /* --------------- 计算「可写」根目录 --------------- */
-let baseDir;
-if (IS_PKG) {
-  baseDir = path.dirname(process.execPath);
-} else if (IS_ELECTRON) {
-  // Electron 打包后:exe 旁边
-  baseDir = path.dirname(app.getPath('exe'));
-} else {
-  // 开发阶段:项目根
-  baseDir = path.resolve(__dirname, '../..');
-}
+/* --------------- 日志目录:始终放在用户数据区 --------------- */
+export const LOG_DIR = path.join(app.getPath('userData'), 'logs');
 
-export const LOG_DIR = path.join(baseDir, 'logs');
-
-if (!fs.existsSync(LOG_DIR)) {
-  fs.mkdirSync(LOG_DIR, { recursive: true });
+/* --------------- 确保目录存在 --------------- */
+try {
+  if (!fs.existsSync(LOG_DIR)) {
+    fs.mkdirSync(LOG_DIR, { recursive: true });
+  }
+} catch (err) {
+  console.error('[main] 创建日志目录失败:', LOG_DIR, err);
 }