SECOPS

Archive WAF events to Snowflake and rebuild monthly rule baselines

Daily, exports Cloudflare firewall events to Snowflake for retention, then monthly recomputes per-rule false-positive baselines from the warehouse and posts the updated…

CategorySecOps
Enginesim
Difficultyintermediate
Triggerschedule
Steps6
Setup~15 min

How it runs

The automated pipeline, trigger to output.

  • TriggerDaily schedule fires
  • ActionPull day's firewall eventsCloudflareCloudflare
  • ActionLoad events into Snowflake history tableSnowflakeSnowflake
  • LogicOn month start, recompute per-rule baselines and thresholds
  • ActionWrite refreshed baselines to Snowflake reference tableSnowflakeSnowflake
  • OutputPost changed thresholds to SlackSlack

What it does

Keeps a durable, queryable history of Cloudflare WAF activity in Snowflake and uses it to keep tuning math honest. Each day it appends new firewall events; each month it recomputes per-rule baselines and benign-rate thresholds from the accumulated history and reports the changes.

When to use it

When short Cloudflare retention isn't enough for trend analysis and your spike-detection and tuning workflows need stable, history-derived baselines rather than a rolling few days. Also useful for audit and compliance retention of firewall decisions.

How it works

  1. 1A daily schedule triggers the export.
  2. 2It pulls the day's Cloudflare firewall events and loads them into a Snowflake events table.
  3. 3On the first run of each month, a logic step recomputes per-rule volume baselines and benign-rate thresholds from the full history.
  4. 4It writes the refreshed baselines back to a Snowflake reference table for other workflows to consume.
  5. 5A summary of changed thresholds is posted to the secops Slack channel.

Set it up

What you configure once, before turning it on.

  1. 1
    Connect CloudflareWorkers, Pages, R2, KV — the edge stack.
  2. 2
    Connect SnowflakeWarehouses, queries, shares.
  3. 3
    Connect SlackChannels, DMs, threads, mentions.
  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.