feat: add agentmon services section to infrastructure page

Label all agentmon docker-compose services with agentmon.monitor=true
and agentmon.group=agentmon so the swarm-monitor picks them up.
Adds Group field to ServiceSnapshot, probes /healthz for api/web roles,
and renders a separate "Agentmon" section below Swarm Services on the
Infrastructure page with new api and worker card renderers.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
William Valentin
2026-03-18 13:41:26 -07:00
parent d2d044a3d8
commit f8ddea3698
7 changed files with 147 additions and 6 deletions
+35
View File
@@ -15,6 +15,10 @@ services:
interval: 5s
timeout: 5s
retries: 5
labels:
agentmon.monitor: "true"
agentmon.group: agentmon
agentmon.role: db
nats:
image: nats:latest
@@ -24,6 +28,10 @@ services:
command: "--jetstream"
volumes:
- nats-data:/data
labels:
agentmon.monitor: "true"
agentmon.group: agentmon
agentmon.role: queue
ingest-gateway:
build: .
@@ -38,6 +46,11 @@ services:
AGENTMON_ADDR: :8080
NATS_URL: nats://nats:4222
NATS_TOPIC: agentmon.events.v1
labels:
agentmon.monitor: "true"
agentmon.group: agentmon
agentmon.role: api
agentmon.port: "8080"
query-api:
build: .
@@ -56,6 +69,11 @@ services:
AGENTMON_QUERY_BASE: http://localhost:8081
NATS_URL: nats://nats:4222
NATS_TOPIC: agentmon.events.v1
labels:
agentmon.monitor: "true"
agentmon.group: agentmon
agentmon.role: api
agentmon.port: "8081"
web-ui:
build: .
@@ -69,6 +87,11 @@ services:
environment:
AGENTMON_UI_ADDR: :8082
AGENTMON_QUERY_BASE: http://query-api:8081
labels:
agentmon.monitor: "true"
agentmon.group: agentmon
agentmon.role: api
agentmon.port: "8082"
event-processor:
build: .
@@ -83,6 +106,10 @@ services:
DATABASE_URL: postgres://postgres:pass@postgres:5432/agentmon?sslmode=disable
NATS_URL: nats://nats:4222
NATS_TOPIC: agentmon.events.v1
labels:
agentmon.monitor: "true"
agentmon.group: agentmon
agentmon.role: worker
swarm-monitor:
build: .
@@ -100,6 +127,10 @@ services:
LITELLM_MASTER_KEY: ${LITELLM_MASTER_KEY:-}
volumes:
- /var/run/docker.sock:/var/run/docker.sock:ro
labels:
agentmon.monitor: "true"
agentmon.group: agentmon
agentmon.role: worker
openclaw-monitor:
build: .
@@ -121,6 +152,10 @@ services:
- /home/will/.ssh/id_rsa.pub:/root/.ssh/id_rsa.pub:ro
- /home/will/.ssh/authorized_keys:/root/.ssh/authorized_keys:ro
- /var/lib/libvirt:/var/lib/libvirt:ro
labels:
agentmon.monitor: "true"
agentmon.group: agentmon
agentmon.role: worker
volumes:
postgres-data: