๐Ÿ“Š Remediation metrics

Live from the remediation database + light census ยท dark = no usable light / LOS ยท dirty = light present but link down

โ€น worklist โšก flappers๐Ÿ‘ท crew

remediation activity per hour โ€” 24h

cleansrepair actions

ports resolved (validated SUCCESS) per hour โ€” 24h

links down per SU โ€” dark vs dirty vs admin

darkdirtyadmin-down

top performers

quality signals

๐Ÿ”Œ API โ€” build your own dashboards on this data

base: https://horizon.irencloud.us (or http://10.64.254.241:8891 on the mgmt LAN) ยท all JSON ยท no auth ยท CORS-open GETs
GET /api/remed/metrics โ€” everything on this page: marks_hist[], resolved_hist[], per_su{dark,dirty,admin}, light_improved_7d, resolved_total, open_total
GET /api/remed/list?su=N โ€” down/admin worklist for an SU (add &up=1 for up-port history) โ€” peer, RUs, xframe panels, light both ends, flaps, cleaning marks, validation
GET /api/remed/flappers โ€” flapper (โ‰ฅ5 bounces/30m) + high-BER (โ‰ฅ1000 err/s) worklist with quiet-timer status
GET /api/remed/people โ€” per-person cleans, actions, ports touched, resolved, success rate, IPs, last active
POST /api/remed/mark โ€” {"sw":"SU3-EW-SP-1-1","port":"sw40p2","side":"a|z","who":"name"}
POST /api/remed/action โ€” {"sw":โ€ฆ,"port":โ€ฆ,"action":"REPLACED|IES|INTROL|ALIGN|OTDR|RESEAT|NEW JUMPER|PORT SWAP|NEW OPTIC|POLARITY","who":"name"}
storage: sqlite /opt/fabric-noc/data/health.db (tables: remediation, remed_log) ยท state refresh: fabric sweep 5 min, validator cron 10 min, light census rolling
example: curl -s https://horizon.irencloud.us/api/remed/metrics | jq .per_su