Posting this partly as a warning and partly because I’m stuck on a support ticket.
Back in mid-June I set up a Log Drain to feed an AI-crawler analytics feature I was building. I pointed the drain at an API route living inside the same project the drain was watching. Didn’t think twice about it at the time.
Every delivery hit that endpoint, which generated its own request and function logs, which the drain then shipped right back to the same endpoint. It just fed itself. Ran that way for about two weeks.
At its steady state it was sitting around 370 requests/second, day and night. Roughly 30 million requests a day, 60+ million function invocations, and about 66 GB of drained logs daily. All of it the loop talking to itself — zero real traffic.
Damage: ~$595 Edge Requests, ~$366 Function Invocations, ~$344 Drains Volume, ~$179 Fast Origin Transfer, ~$176 Fluid Active CPU. About $1,700 total. My normal bill for this team is under $100/month.
I caught it and killed the drain on July 2. Logs show traffic dropped back to baseline within minutes. I’ve since rebuilt it with the drain destination hosted outside Vercel entirely, so there’s no way to recreate the loop. Turning on Spend Management too, which I should have had on from the start.
Two things I’m hoping someone can weigh in on:
Is there anything planned to catch this? Even a warning when a drain’s destination URL points at a domain inside the same project would have saved me. Or some kind of circuit breaker when drain volume goes vertical. I’m not trying to pass the buck — this was my mistake — but it fails silently and you don’t find out until the invoice shows up two weeks later.
Second, I opened a billing ticket on July 6 asking about a one-time courtesy credit and haven’t heard back. The invoice is past due now. If any staff here can nudge it toward whoever handles those, I’d really appreciate it. Happy to DM the ticket number and team ID.
Anyway — mostly posting so the next person who searches “log drain runaway usage” actually finds something.