diff --git a/apps/media-worker/src/produce.ts b/apps/media-worker/src/produce.ts index 94ab253..e60a443 100644 --- a/apps/media-worker/src/produce.ts +++ b/apps/media-worker/src/produce.ts @@ -12,7 +12,7 @@ * Everything else is env parity with the API's storage (S3_ENDPOINT/S3_ACCESS_KEY/ * S3_SECRET_KEY/S3_BUCKET/S3_KEK) and DATABASE_URL for the job tables. */ -import { mkdirSync } from "node:fs"; +import { appendFileSync, mkdirSync } from "node:fs"; import pino from "pino"; import { Pool as PgPool } from "pg"; import { laneFromEnv, resolveProduceFont } from "./env"; @@ -34,7 +34,15 @@ export async function startProduceWorker(): Promise<{ runner: ProduceRunner; poo fontFile, scratchRoot, lane, - redactor: { redact: () => "[produce stderr redacted]" }, + redactor: { + redact: (line) => { + if (process.env.MEDIA_DEBUG_STDERR === "1") { + appendFileSync("/tmp/ffmpeg-debug.log", line + "\n"); + return line; + } + return "[produce stderr redacted]"; + }, + }, onStderr: (message) => logger.warn({ message }, "ffmpeg stderr"), onEvent: (event) => { switch (event.type) {