Skip to main content
Vercel Functions emit runtime logs (your code’s stdout and stderr, one line per console.log), platform lines such as timeouts and process exits, and spans: Vercel’s own (Resolve Route, Invoke Function) and, when instrumented, your code’s. Each log line carries the request’s traceId, the deploymentId and the region the function ran in (executionRegion). Marketplace connector: its log drain carries runtime logs (source = 'lambda') and its trace drain carries Vercel’s spans for each request.

Alternatives

Worth watching

In a project using Vercel services, a top-level regions setting didn’t reach the functions; they ran in iad1. Setting regions in each service’s functions configuration fixed it. executionRegion is how you’d notice. An eve agent writes its own build output, which ignores that setting too; the lab sets the region in each eve function’s configuration after the build (scripts/patch-eve-vercel-output.mjs). Timeouts also cost money. In the lab, streaming responses whose browser had gone away kept running until the 300-second limit and held their instance, and its memory, for the full five minutes. supportsCancellation didn’t end them: it only passes an abort signal the code has to act on. A lower maxDuration for the streaming route did. See Ingesting Vercel Data into Bronto for the full mapping.

References