IT OPS

Cloudflare WAF Block-Spike Auto Rollback

Watches Axiom for a sudden surge in WAF-blocked legitimate traffic after a rule change and automatically rolls the ruleset back to its last known-good version, then pages on-call.

CategoryIT Ops
Enginesim
Difficultyadvanced
Triggerschedule
Steps6
Setup~25 min

How it runs

The automated pipeline, trigger to output.

  • TriggerRun every 2 minutes post-deploy
  • ActionQuery Axiom for WAF block rate vs baselineAxiom
  • LogicDetect block spike on recent deploy
  • ActionRoll Cloudflare ruleset to last known-good versionCloudflareCloudflare
  • ActionPage on-call via PagerDutyPagerDutyPagerDuty
  • OutputPost rollback summary to incident channelSlack

What it does

This workflow detects when a freshly deployed WAF rule starts blocking far more requests than baseline — a classic sign of a false-positive rule — and reverts to the previous ruleset version automatically before customers feel sustained pain.

When to use it

Run it whenever you ship WAF rules frequently and a bad expression could silently block real users. It turns a multi-minute incident into an automated revert with an audit note.

How it works

  1. 1A schedule fires every two minutes after any recent ruleset deploy.
  2. 2An Axiom query pulls WAF block counts for the affected zone over the last interval versus a rolling baseline.
  3. 3A logic step checks whether blocked-request rate exceeds the spike threshold and the deploy is recent.
  4. 4If tripped, the workflow calls Cloudflare to repoint the ruleset to the last known-good version ID.
  5. 5PagerDuty is triggered with the zone, rule, and block metrics for on-call awareness.
  6. 6A summary of the rollback and the trigger metrics is posted to the incident Slack channel.

Set it up

What you configure once, before turning it on.

  1. 1
    Connect AxiomLog streams, queries, dashboards.
  2. 2
    Connect CloudflareWorkers, Pages, R2, KV — the edge stack.
  3. 3
    Connect PagerDutyIncidents, on-call, escalations.
  4. 4
    Connect SlackChannels, DMs, threads, mentions.
  5. 5
    Set each agent's modelWe leave models unset so you pick the tier — fast + cheap, or top-quality.
  6. 6
    Tune it to your dataEdit the prompts, filters, and field mappings so it matches how your team works.
  7. 7
    Test, then turn it onRun once against a sample, confirm the output, then enable the trigger.

Run this workflow in your colony.

14-day trial. No DevOps. No Sales call. Provisioned in under a minute.