Objective
Your mission
Check your live app for errors, test on multiple environments, and practice the rollback process. Output: monitoring_notes.md.
You need: A deployed app with real users (or at least yourself testing).
Time: 25 minutes.
Step 1: check the browser console (5 min)
Open your live site and check the browser console (Cmd+Option+J on Mac, F12 on Windows).
Look for:
- Red errors — JavaScript errors, failed network requests, missing resources
- Yellow warnings — deprecated APIs, performance issues
- Failed network requests — API calls returning 4xx or 5xx
The 'it works on my machine' trap
Just because the app works on your machine doesn't mean it works for everyone. Different browsers, network conditions, devices, data — all can cause issues you didn't see locally. After launch, test on: (1) a different browser, (2) a mobile device, (3) a slow network, (4) with real data. Monitoring catches what you can't test.
Write in your file:
## Browser Console Check
Red errors found: [list or "none"]
Yellow warnings: [list or "none"]
Failed network requests: [list or "none"]
Step 2: check supabase logs (5 min)
Go to Supabase Dashboard → Logs.
Database Logs (PostgreSQL):
- Look for: slow queries, errors, failed inserts/updates
- Common issues: RLS blocking access, missing columns, constraint violations
Auth Logs:
- Look for: failed logins, signup errors, session issues
- Common issues: email confirmation not configured, rate limiting
API Logs:
- Look for: 4xx errors (client errors), 5xx errors (server errors)
- Common issues: missing RLS policies, invalid queries
Write in your file:
## Supabase Logs
Database issues: [list or "none"]
Auth issues: [list or "none"]
API issues: [list or "none"]
Step 3: test on multiple environments (5 min)
Test your app on:
- A different browser (if you use Chrome, try Safari or Firefox)
- A mobile device (or Chrome DevTools → Cmd+Shift+M → iPhone SE)
- Slow network (Chrome DevTools → Network → Slow 3G)
Write in your file:
## Multi-Environment Test
Browser 1 (Chrome): [works/issues found]
Browser 2 (Safari/Firefox): [works/issues found]
Mobile (375px): [works/issues found]
Slow 3G: [works/issues found — note loading behavior]
Step 4: add a feedback mechanism (3 min)
Add a simple way for users to report issues:
- A "Report a bug" link in the footer
- A feedback form
- A contact email
Write in your file:
## Feedback Mechanism
Type: [link/form/email]
Location in app: [e.g., footer]
Implemented: [yes/no]
Step 5: prioritize issues found (2 min)
If you found issues, prioritize them:
- Critical: App crashes, data loss, auth broken — fix immediately
- High: Core feature broken for some users — fix within 24 hours
- Medium: Non-core feature broken, workaround exists — fix within a week
- Low: UI polish, nice-to-have — fix when time allows
Write in your file:
## Issues Prioritized
1. [issue] — Priority: [Critical/High/Medium/Low] — Status: [fixed/planned]
2. [issue] — Priority: [Critical/High/Medium/Low] — Status: [fixed/planned]
[or "No issues found"]
Step 6: practice the rollback process (5 min)
Find the rollback option in your deployment platform (don't actually roll back unless needed — just know how).
Vercel: Project → Deployments → find last working deploy → "..." menu → "Promote to Production" Netlify: Site → Deploys → find last working deploy → "Publish"
When to roll back:
- A new deploy breaks a feature that was working
- The app is unusable (crashes, blank pages, auth broken)
- You can't identify or fix the issue quickly
When NOT to roll back:
- The issue is minor (cosmetic, non-core feature)
- You can fix it with a quick patch
- The new deploy fixes a critical security issue
Write in your file:
## Rollback Practice
Platform: [Vercel/Netlify]
Found deployments list: [yes/no]
Found last working deployment: [yes/no]
Know how to promote/publish it: [yes/no]
Rollback decision criteria understood: [yes/no]
A deploy breaks sign-up for every user. What's the fastest way to stop the damage?
Platforms keep previous deployments; promoting the last working one restores service in minutes while you fix the bug without pressure.