-- Set up automated cron jobs for monitoring and anomaly detection -- 1. Detect anomalies every 5 minutes SELECT cron.schedule( 'detect-anomalies-every-5-minutes', '*/5 * * * *', -- Every 5 minutes $$ SELECT net.http_post( url := 'https://ydvtmnrszybqnbcqbdcy.supabase.co/functions/v1/detect-anomalies', headers := '{"Content-Type": "application/json", "Authorization": "Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJzdXBhYmFzZSIsInJlZiI6InlkdnRtbnJzenlicW5iY3FiZGN5Iiwicm9sZSI6ImFub24iLCJpYXQiOjE3NTgzMjYzNTYsImV4cCI6MjA3MzkwMjM1Nn0.DM3oyapd_omP5ZzIlrT0H9qBsiQBxBRgw2tYuqgXKX4"}'::jsonb, body := jsonb_build_object('scheduled', true) ) as request_id; $$ ); -- 2. Collect metrics every minute SELECT cron.schedule( 'collect-metrics-every-minute', '* * * * *', -- Every minute $$ SELECT net.http_post( url := 'https://ydvtmnrszybqnbcqbdcy.supabase.co/functions/v1/collect-metrics', headers := '{"Content-Type": "application/json", "Authorization": "Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJzdXBhYmFzZSIsInJlZiI6InlkdnRtbnJzenlicW5iY3FiZGN5Iiwicm9sZSI6ImFub24iLCJpYXQiOjE3NTgzMjYzNTYsImV4cCI6MjA3MzkwMjM1Nn0.DM3oyapd_omP5ZzIlrT0H9qBsiQBxBRgw2tYuqgXKX4"}'::jsonb, body := jsonb_build_object('scheduled', true) ) as request_id; $$ ); -- 3. Data retention cleanup daily at 3 AM SELECT cron.schedule( 'data-retention-cleanup-daily', '0 3 * * *', -- Daily at 3:00 AM $$ SELECT net.http_post( url := 'https://ydvtmnrszybqnbcqbdcy.supabase.co/functions/v1/data-retention-cleanup', headers := '{"Content-Type": "application/json", "Authorization": "Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJzdXBhYmFzZSIsInJlZiI6InlkdnRtbnJzenlicW5iY3FiZGN5Iiwicm9sZSI6ImFub24iLCJpYXQiOjE3NTgzMjYzNTYsImV4cCI6MjA3MzkwMjM1Nn0.DM3oyapd_omP5ZzIlrT0H9qBsiQBxBRgw2tYuqgXKX4"}'::jsonb, body := jsonb_build_object('scheduled', true) ) as request_id; $$ );