Severity: info
Runbook — FASE 17 Observabilidad y Gobernanza
Procedimientos operativos para el panel de gobernanza Prometheus/Grafana: verificacion de metricas, solucion de scrape, diagnostico de paneles sin datos.
Verificacion rapida
# 1. Metricas del router (4 contadores)curl -s http://192.168.1.30:8083/metrics | grep -E 'ailab_router_chat_requests_total|ailab_router_hard_facts_hits_total|ailab_governance_blocked'
# 2. Metricas del gatewaycurl -s http://192.168.1.30:8008/metrics | grep -E 'ailab_governance_blocked'
# 3. Prometheus targetscurl -s http://192.168.1.40:9090/api/v1/targets | python3 -c "import sys,jsondata = json.load(sys.stdin)for t in data['data']['activeTargets']: if 'router' in t['labels'].get('job','') or 'gateway' in t['labels'].get('job',''): print(f\"{t['health']:4s} {t['scrapeUrl']:55s} job={t['labels'].get('job','')}\")"
# 4. Query de bloqueos en Prometheuscurl -s 'http://192.168.1.40:9090/api/v1/query?query=ailab_governance_blocked_actions_total'
# 5. Query de ratio Hard Factscurl -s 'http://192.168.1.40:9090/api/v1/query?query=(sum(rate(ailab_router_hard_facts_hits_total%5B1m%5D))%20/%20sum(rate(ailab_router_chat_requests_total%5B1m%5D))%20*%20100)%20or%20vector(0)'Problemas comunes
Panel Ratio muestra “No data”
Causa: La metrica ailab_router_chat_requests_total es demasiado nueva y rate([1m]) no encuentra scrapes suficientes en la ventana.
Solucion: La query ya incluye or vector(0) como respaldo. Si persiste “No data”, verificar que el router esta scrapeando: curl -s http://192.168.1.40:9090/api/v1/targets | grep ai-lab-router.
Panel Ratio muestra ∞
Causa: Division por cero. ailab_router_chat_requests_total no tiene datos porque nadie ha llamado al router desde el ultimo reinicio.
Solucion: Enviar una peticion al router (curl http://192.168.1.30:8083/v1/chat/completions ...) para que el contador de peticiones se active.
Panel Alertas muestra “No data”
Causa: El contador sin labels ailab_governance_blocked_actions_total no se esta exportando. Probablemente el router o gateway no se reinicio tras el despliegue.
Solucion:
sudo systemctl restart ailab-router ailab-gatewaycurl -s http://192.168.1.30:8083/metrics | grep governance_blocked_actions_totalPrometheus no scrapea el router
Causa: Falta el job ai-lab-router en prometheus.yml.
Solucion:
- Editar
/home/albert/docker/monitorizacion/prometheus/config/prometheus.ymlen.40 - Anadir:
- job_name: ai-lab-routerscrape_interval: 15smetrics_path: /metricsstatic_configs:- labels:cluster: ai-labenv: homelabrole: routertargets:- 192.168.1.30:8083
- Recargar:
docker exec prometheus kill -HUP 1
Los contadores no suben
Causa: No se han recibido comandos peligrosos desde el reinicio.
Solucion: Enviar un prompt al chat del router pidiendo comandos peligrosos. Si el modelo de LM Studio responde con <tool_call> que contenga rm -rf, sudo, reboot, etc., los contadores se incrementaran y el panel de Grafana lo reflejara en ~15s.