Church Cashbook Maintenance Manual
Fast-response checklist for unexpected outages, prioritising data integrity and safe restoration of service.
Emergency / unplanned outage procedures
Purpose
This procedure is used for unexpected failures or service disruption. The priority order is: protect data integrity, stop further writes if needed, restore safely, then communicate and document.
Immediate response (stabilise first)
- ☐ Confirm the issue and its scope (all users vs single page vs single church).
- ☐ Check server and PHP error logs for the root error.
- ☐ If there is any risk of data corruption or uncontrolled writes, enable maintenance mode immediately:
- ☐ Create
maintenance.onin the web root. - ☐ Confirm the site returns HTTP 503.
- ☐ Create
Diagnosis and containment
- ☐ Identify likely cause (deployment error, schema mismatch, config issue, resource exhaustion, DB availability).
- ☐ If a recent deployment occurred, consider immediate rollback.
- ☐ If database integrity is in doubt:
- ☐ Stop all writes (keep 503 enabled).
- ☐ Take an immediate backup snapshot before intervention (if possible).
Recovery
- Apply corrective action (rollback, patch, restore, config fix).
- Validate database health and schema completeness (if relevant).
- Check logs again to ensure errors have stopped.
- Smoke test core workflows:
- ☐ Login
- ☐ Dashboard
- ☐ Add a transaction (and void/remove if appropriate)
- ☐ Reports
- ☐ Gift Aid (if applicable)
Restore service
- Delete
maintenance.on. - Confirm normal routing resumes (HTTP 200).
- Confirm login and dashboard access.
- Perform a final quick verification that the incident condition is resolved.
Post-incident review (required)
- ☐ Record incident details (time detected, duration, impact, root cause, fix applied).
- ☐ Confirm backups were valid and available.
- ☐ Identify prevention steps (monitoring, deployment safeguards, tests, documentation updates).
- ☐ If any data impact is suspected, document what was verified and how.
Emergency incident log template
Date: ____________________________
Time detected: ____________________ Detected by: ____________________
Issue summary: ________________________________________________________
Impact scope: _________________________________________________________
Was maintenance mode enabled? ☐ Yes ☐ No
Root cause: ___________________________________________________________
Corrective action: ____________________________________________________
Rollback used? ☐ Yes ☐ No
Data integrity verified? ☐ Yes ☐ No
Follow-up actions:
______________________________________________________________
______________________________________________________________