| name | diagnose |
| description | Run safe diagnostic commands on the remote memory server. Use for checking logs, container status, disk usage, memory, and running read-only database queries. |
Server Diagnostics
The diagnostics script is at tools/diagnose.sh. It provides safe, read-only commands for inspecting the remote server memory at /home/ec2-user/memory.
There are two deployments:
- memory - my personal stuff
- chris - Equistamp stuff
The default is to use the memory version - to use the chris one, call with DEPLOY_DIR=/home/ec2-user/chris
Commands
Status (overview)
Get overall system health:
./tools/diagnose.sh status
Shows: container status, memory, disk, and recent errors.
Logs
View docker logs:
./tools/diagnose.sh logs
./tools/diagnose.sh logs api
./tools/diagnose.sh logs api 500
./tools/diagnose.sh logs worker 200
Container Status
./tools/diagnose.sh ps
System Resources
./tools/diagnose.sh disk
./tools/diagnose.sh mem
./tools/diagnose.sh top
File Operations
./tools/diagnose.sh ls <path>
./tools/diagnose.sh cat <file>
./tools/diagnose.sh tail <file> [lines]
./tools/diagnose.sh grep <pattern> <path>
Database Queries
Run read-only SQL queries (SELECT only):
./tools/diagnose.sh db "SELECT count(*) FROM source_item"
./tools/diagnose.sh db "SELECT * FROM source_item ORDER BY created_at DESC LIMIT 5"
./tools/diagnose.sh db "SELECT status, count(*) FROM source_item GROUP BY status"
Non-SELECT queries are blocked for safety.
Common Diagnostics
Check why API is failing:
./tools/diagnose.sh logs api 200
Check worker processing:
./tools/diagnose.sh logs worker 100
Database stats:
./tools/diagnose.sh db "SELECT count(*) FROM source_item"
./tools/diagnose.sh db "SELECT modality, count(*) FROM source_item GROUP BY modality"
Find recent errors:
./tools/diagnose.sh status
./tools/diagnose.sh grep "ERROR" src/
Check disk space:
./tools/diagnose.sh disk