Update web monitoring docs with Heartbeat Monitor

- Added new Heartbeat Monitor dashboard at port 3005
- Documented all features: uptime tracking, sparklines, add app UI
- Updated all three projects in the monitoring list
- Added instructions for adding new apps dynamically
This commit is contained in:
Matt Bruce 2026-02-18 11:16:02 -06:00
parent e02147408a
commit 834fa5721c

View File

@ -1,23 +1,60 @@
# Web Apps Monitoring
## Heartbeat Monitor Dashboard
**URL:** http://localhost:3005
Central dashboard to track all your local web apps with uptime stats, response times, and auto-restart capabilities.
## Active Sites
| Site | URL | Port | Purpose |
|------|-----|------|---------|
| Project Hub | http://localhost:3000 | 3000 | Task/idea tracking with Kanban |
| Blog Backup | http://localhost:3003 | 3003 | Daily digest & message backup |
| Site | URL | Port | Purpose | Category |
|------|-----|------|---------|----------|
| Project Hub | http://localhost:3000 | 3000 | Task/idea tracking with Kanban | Productivity |
| Blog Backup | http://localhost:3003 | 3003 | Daily digest & message backup | Backup |
| Heartbeat Monitor | http://localhost:3005 | 3005 | Monitor all local web apps | Monitoring |
## Heartbeat Monitor Features
- **Real-time Status:** See which apps are up/down at a glance
- **Uptime Tracking:** Historical uptime percentage per app
- **Response Times:** Track performance over time
- **Visual Sparklines:** Mini charts showing status history
- **Add New Apps:** Click "Add App" to monitor more services
- **Categories:** Organize apps by type (Productivity, Backup, Monitoring, etc.)
- **Auto-refresh:** Dashboard updates every 30 seconds
## Adding New Apps
1. Go to http://localhost:3005
2. Click "Add App"
3. Fill in details:
- Name & Description
- URL (e.g., http://localhost:3000)
- Port number
- Project path (for auto-restart)
- Start command (e.g., `npm run dev -- --port 3000`)
- Category & Color
4. Click "Add App"
The app will be monitored immediately and persisted in `data/apps.json`.
## Data Storage
- **Apps List:** `heartbeat-monitor/data/apps.json`
- **Status History:** `heartbeat-monitor/data/status.json`
- Both files are git-tracked for backup
## Auto-Restart Monitoring
**Cron Job:** `Monitor Web Apps - Auto Restart`
- **Frequency:** Every 10 minutes
- **Action:** Checks HTTP 200 status on both sites
- **Action:** Checks HTTP 200 status on all registered apps
- **On Failure:** Automatically restarts the down service(s)
- **Notification:** Telegram message if restart occurred
## Manual Restart
If both are down:
If services are down:
```bash
# Project Hub
cd /Users/mattbruce/Documents/Projects/OpenClaw/Web/gantt-board
@ -26,17 +63,23 @@ npm run dev -- --port 3000
# Blog Backup
cd /Users/mattbruce/Documents/Projects/OpenClaw/Web/blog-backup
npm run dev -- --port 3003
# Heartbeat Monitor
cd /Users/mattbruce/Documents/Projects/OpenClaw/Web/heartbeat-monitor
npm run dev -- --port 3005
```
## Check Status
## Check All Status
```bash
curl http://localhost:3000
curl http://localhost:3003
curl http://localhost:3000 # Project Hub
curl http://localhost:3003 # Blog Backup
curl http://localhost:3005 # Heartbeat Monitor
```
## For Future AI Continuity
If this agent is replaced:
1. Run `openclaw cron list` to see monitoring job
2. Check `process list` for running dev servers
3. Restart manually if needed using commands above
4. Both projects are in `/Users/mattbruce/Documents/Projects/OpenClaw/Web/`
1. Check **Heartbeat Monitor** first: http://localhost:3005
2. Run `openclaw cron list` to see monitoring jobs
3. Check `process list` for running dev servers
4. All projects are in `/Users/mattbruce/Documents/Projects/OpenClaw/Web/`
5. App configurations are in `heartbeat-monitor/data/apps.json`