dashcam 1.3.23 → 1.3.25
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/processManager.js +22 -0
- package/package.json +1 -1
package/lib/processManager.js
CHANGED
|
@@ -352,7 +352,17 @@ class ProcessManager {
|
|
|
352
352
|
const logFile = path.join(logDir, `recording-${Date.now()}.log`);
|
|
353
353
|
const logStream = fs.createWriteStream(logFile, { flags: 'a' });
|
|
354
354
|
|
|
355
|
+
// Wait for the log stream to open before using it in spawn
|
|
356
|
+
await new Promise((resolve, reject) => {
|
|
357
|
+
logStream.once('open', resolve);
|
|
358
|
+
logStream.once('error', reject);
|
|
359
|
+
});
|
|
360
|
+
|
|
355
361
|
logger.info('Background process log file', { logFile });
|
|
362
|
+
console.log('[ProcessManager] Log file created:', logFile);
|
|
363
|
+
console.log('[ProcessManager] Node path:', nodePath);
|
|
364
|
+
console.log('[ProcessManager] Background script:', backgroundScriptPath);
|
|
365
|
+
console.log('[ProcessManager] Options:', optionsJson);
|
|
356
366
|
|
|
357
367
|
// Spawn the background process with proper detachment
|
|
358
368
|
const child = spawn(
|
|
@@ -366,11 +376,23 @@ class ProcessManager {
|
|
|
366
376
|
}
|
|
367
377
|
);
|
|
368
378
|
|
|
379
|
+
// Handle spawn errors
|
|
380
|
+
child.on('error', (error) => {
|
|
381
|
+
console.error('[ProcessManager] Spawn error:', error);
|
|
382
|
+
logger.error('Failed to spawn background process', { error: error.message, stack: error.stack });
|
|
383
|
+
});
|
|
384
|
+
|
|
385
|
+
child.on('exit', (code, signal) => {
|
|
386
|
+
console.log('[ProcessManager] Background process exited', { code, signal, pid: child.pid });
|
|
387
|
+
logger.info('Background process exited', { code, signal, pid: child.pid });
|
|
388
|
+
});
|
|
389
|
+
|
|
369
390
|
// Unref to allow parent to exit independently
|
|
370
391
|
child.unref();
|
|
371
392
|
|
|
372
393
|
const pid = child.pid;
|
|
373
394
|
|
|
395
|
+
console.log('[ProcessManager] Background process spawned with PID:', pid);
|
|
374
396
|
logger.info('Background process spawned', {
|
|
375
397
|
pid,
|
|
376
398
|
logFile,
|