N8n-webhook spamming circuit-breaker debug logs

Describe the problem/error/question

n8n-webhook is producing a huge amount of debug and info logs in a short period. 10K lines in 2 mins.

What is the error message (if any)?

2026-02-26T10:34:19.353Z | debug | Executed function with circuit breaker protection, inflight requests: 0 {"scopes":["circuit-breaker"],"file":"circuit-breaker.js","function":"wrapper"}

Information on your n8n setup

  • n8n version: 2.4.8
  • Database (default: SQLite): Postgredql
  • n8n EXECUTIONS_PROCESS setting (default: own, main): queue (separate worker, webhook and ui pods in k8s)
  • Running n8n via (Docker, npm, n8n cloud, desktop app): k8s
  • Operating system:
1 Like

Hi @mehran.eftekhari

This amount of logging is expected when N8N_LOG_LEVEL is set to debug.
You can reduce this to a manageable level by adjusting the logging environment variables.

From the docs, the relevant variables are: [Logs env vars; Logging in n8n]

For your webhook pod in Kubernetes, set a less verbose level, for example:

env:
  - name: N8N_LOG_LEVEL
    value: "warn"        # or "error" if you want minimal logs
  - name: N8N_LOG_OUTPUT
    value: "console"

Apply the same change to worker/UI pods as needed, then restart the deployments so the new env vars take effect.

Hi thanks for your reply. That’s true. The env variable is set to debug.

What is weird though is that, there’s nothing in deployment that sets it to debug. It should be info by default but somehow it’s not.

1 Like

Hi @mehran.eftekhari !
Probably it’s coming from your infra layer, check Kubernetes

If you’re not setting it to debug anywhere then something in your k8s layer is probably injecting it, check your Helm chart values, ConfigMaps, and any init containers that might be overriding env vars on the webhook pod. Run kubectl exec into the webhook pod and do env | grep N8N_LOG to see what it’s actually getting at runtime. I’d just explicitly set N8N_LOG_LEVEL=info on the webhook deployment to be safe, that way even if something else tries to override it your manifest takes precedence. The circuit breaker logs are normal at debug level, they fire on every request including health check probes so that explains the volume.

I checked everywhere, it’s not coming for deployment. I forced it to info by changing k8s env, and the issue is solved.

But I still don’t know why it was there and only in the webhook container.

If that fixed it, then the variable had to be set somewhere in the pod configuration, even if it wasn’t obvious at first. Since only the webhook container was affected, it was probably defined specifically for that pod. I’d check the final pod spec to see where it was coming from, because n8n doesn’t switch to debug on its own unless the environment sets it that way.
Glad everything worked out @mehran.eftekhari