🌳
pt0/nextF/deployF/teeDevServerLogAI.mts
1import { createWriteStream } from 'fs'
5export const teeDevServerLog = (appName: string) => {
7 const testSuffix = getIsTestInstance() ? '-test' : ''
8 const logPath = `${ptTmpDir}/devserver-${appName}${testSuffix}.log`
9 const logStream = createWriteStream(logPath, {flags: 'w'})
11 const origStdoutWrite = process.stdout.write.bind(process.stdout)
12 const origStderrWrite = process.stderr.write.bind(process.stderr)
14 process.stdout.write = function(chunk: any, ...args: any[]) {
15 logStream.write(typeof chunk === 'string' ? chunk : chunk?.toString?.() ?? '')
16 return origStdoutWrite(chunk, ...args)
17 } as typeof process.stdout.write
19 process.stderr.write = function(chunk: any, ...args: any[]) {
20 logStream.write(typeof chunk === 'string' ? chunk : chunk?.toString?.() ?? '')
21 return origStderrWrite(chunk, ...args)
22 } as typeof process.stderr.write
24 process.stdout.write(`[devserver] tee: tmp/devserver-${appName}${testSuffix}.log\n`)