SECOPS

Daily Cloudflare WAF Cluster Digest to BigQuery and Notion

Each morning it loads the prior day's blocked Cloudflare requests into BigQuery, clusters them into the top recurring attack patterns.

CategorySecOps
Enginesim
Difficultyintermediate
Triggerschedule
Steps6
Setup~15 min

How it runs

The automated pipeline, trigger to output.

  • TriggerDaily morning schedule
  • ActionExport yesterday's blocked requests from CloudflareCloudflareCloudflare
  • ActionInsert rows into BigQueryGoogle BigQueryBigQuery
  • LogicCluster and rank recurring signatures
  • ActionWrite digest with candidate rulesOpenAI
  • OutputPublish digest to Notion review pageNotionNotion

What it does

It gives the security team a daily, durable record of what the WAF blocked and which patterns are worth a permanent rule. Raw blocks land in BigQuery for long-term analysis, and the human-readable summary with rule suggestions lands in Notion.

When to use it

When you want a calm daily review rhythm rather than real-time alerts, plus a queryable warehouse of block history for trend analysis and audits.

How it works

  1. 1A schedule fires once each morning.
  2. 2Export yesterday's blocked requests from Cloudflare.
  3. 3Insert the rows into a BigQuery table for retention and querying.
  4. 4Run a clustering query that ranks the top recurring signatures by volume and growth.
  5. 5An LLM step writes a digest summarizing each cluster with a suggested candidate rule and confidence.
  6. 6Publish the digest to a Notion page dated for the team's morning review.

Set it up

What you configure once, before turning it on.

  1. 1
    Connect CloudflareWorkers, Pages, R2, KV — the edge stack.
  2. 2
    Connect BigQueryDatasets, queries, schemas.
  3. 3
    Connect OpenAIModels, embeddings, files.
  4. 4
    Connect NotionPages, databases, comments.
  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.