From 6d61bf24286596bec680347b2b9f88653f5a157c Mon Sep 17 00:00:00 2001 From: duoaohui <928970622@qq.com> Date: Tue, 19 May 2026 14:15:53 +0800 Subject: [PATCH] =?UTF-8?q?=E8=A7=86=E9=A2=91=E4=BF=9D=E5=AD=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/services/recording.service.ts | 23 +++++++++++++++---- 1 file changed, 19 insertions(+), 4 deletions(-) diff --git a/media-server/src/services/recording.service.ts b/media-server/src/services/recording.service.ts index e506aad..dc11a1b 100644 --- a/media-server/src/services/recording.service.ts +++ b/media-server/src/services/recording.service.ts @@ -515,6 +515,18 @@ export async function startRecording(input: StartRecordingInput): Promise { + stderrTail += text; + if (stderrTail.length > STDERR_TAIL_LIMIT) { + stderrTail = stderrTail.slice(stderrTail.length - STDERR_TAIL_LIMIT); + } + }; + const exited = new Promise((resolve) => { ffmpegProc!.once('exit', (code, signal) => { const entry = recordingMap.get(id); @@ -522,8 +534,9 @@ export async function startRecording(input: StartRecordingInput): Promise { const text = chunk.toString('utf-8'); - // ffmpeg 默认大部分日志走 stderr;只在 debug 级别落,避免日志爆炸 + // 1) 永远写入环形缓冲,供进程异常退出时 dump + appendStderrTail(text); + // 2) 正常实时日志仍走 debug 级,避免高频日志爆炸 log.debug({ recordingId: id }, `[ffmpeg] ${text.trim()}`); });