SECOPS

Hourly WAF block to Honeycomb error-rate correlation

On an hourly schedule, compares Cloudflare WAF block volume against Honeycomb backend error rate for the same paths and flags only the paths where blocked traffic and origin…

CategorySecOps
Enginesim
Difficultyintermediate
Triggerschedule
Steps5
Setup~15 min

How it runs

The automated pipeline, trigger to output.

  • TriggerHourly schedule fires
  • ActionPull WAF blocks per path from Cloudflare GraphQLCloudflareCloudflare
  • ActionPull error rate per route from HoneycombHoneycomb
  • LogicJoin by path; keep routes where blocks and errors both rose
  • OutputWrite correlated rows to AxiomAxiom

What it does

Every hour it pulls Cloudflare WAF block counts grouped by path and pulls Honeycomb error rates for the matching service routes, then joins the two. It surfaces only paths where WAF blocks AND origin errors both climbed in the same hour, which is the pattern that suggests an attack is actually degrading the service rather than being cleanly absorbed.

When to use it

Use it as a steady heartbeat when you want correlation, not raw alerts. It separates "WAF is doing its job quietly" from "WAF is busy and the backend is also hurting on the same routes."

How it works

  1. 1A schedule fires hourly.
  2. 2An action step queries Cloudflare GraphQL for blocked-request counts per path over the last hour.
  3. 3An action step queries Honeycomb for error rate per matching route over the same hour.
  4. 4A logic step joins both datasets by path and keeps only routes where blocks and errors both increased.
  5. 5The output step writes the correlated rows to Axiom as a structured event for trend dashboards and longer retention.

Set it up

What you configure once, before turning it on.

  1. 1
    Connect CloudflareWorkers, Pages, R2, KV — the edge stack.
  2. 2
    Connect HoneycombDistributed traces and queries.
  3. 3
    Connect AxiomLog streams, queries, dashboards.
  4. 4
    Set each agent's modelWe leave models unset so you pick the tier — fast + cheap, or top-quality.
  5. 5
    Tune it to your dataEdit the prompts, filters, and field mappings so it matches how your team works.
  6. 6
    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.