- LXCs: use /interfaces endpoint first, fallback to net0-net7 config parsing - QEMU: use /agent/network-get-interfaces with correct result nesting - IPv4 only filtering (ip-address-type check) - Drop ip6= and nameserver from config fallback Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2.6 KiB
2.6 KiB
Feature Backlog — proxmox-monitor
Completed
Power Control
- Start/stop/restart buttons per row on VMs and LXCs.
- Power action uses
/api2/extjsendpoint with empty body{}. - Instant UI refresh via direct state sync + rAF flush for status messages.
Console Link
- Console button per row opens Proxmox web UI console in new tab.
- URL format:
/?console=lxc|qemu&vmid={id}&node={node}&resize=scale&xtermjs=1 - Browser session cookies handle Proxmox auth automatically in new tab.
Manual Refresh
- Button in dashboard header that calls
mutate()on all SWR caches.
Custom Poll Interval
- Number input in header (milliseconds) that updates polling in real-time.
- Replaced SWR polling with a manual
setIntervaleffect.
Group by Node
- Collapse/expand VMs/LXCs by node with toggle. Each node is a collapsible card with running/stopped subtotals.
Uptime Duration
formatUptime()now formats to "3d 4h 12m" (days, hours, minutes). Falls back to "4h 12m" or "12m" when days aren't needed.
Quick Wins (low effort, high value)
Per-VM/LXC IP Addresses
- LXCs: parses
ip=andip6=fromnet0,net1, etc. fields in/nodes/<node>/lxc/<id>/config. - VMs: fetches from
/nodes/<node>/qemu/<id>/agent/network-get-interfacesand readsipaddresses. - Displays IPs below the name in the table.
- Status: done
Search / Filter
- Client-side text input filtering table rows by name/node/status
- Uses
useMemofor performant filtering, auto-expands single node and filter-matched nodes - Status: done (merged to main)
Medium Effort
Storage Usage
- Show disk usage per Proxmox storage backend (like node cards)
- Note:
disk.totalis not populated in the API (always 0) — needspveshor extra API calls
Status Change Alert
- Toast/banner when a VM state changes between polls
Resource Allocation
- Show vCPU count, total disk size alongside usage stats
- Note: disk.total is not populated by Proxmox API — only disk.used is available
Per-VM IP Addresses
- Done — uses
/nodes/<node>/qemu/<id>/agent/network-get-interfacesfor VMs and confignet0/net1parsing for LXCs.
Per-VM CPU/Memory Trend
- Periodic polling to build a small trend chart
Larger Features
Cluster Status
- HA, quorum, and failover info per cluster
Network Health
- Network interfaces and link status per node
Recent Proxmox Events
- Audit log / recent events from the Proxmox cluster
Docker Deployment
- Dockerfile + docker-compose for easy hosting
Health Check Endpoint
/api/healthfor reverse proxy / uptime monitoring