Cloud-Managed Network Monitoring & Reporting
Automated health reporting for a cloud-managed (Meraki) out-of-band network — cellular signal and failover status plus site-to-site VPN tunnel reachability pulled from the Dashboard API into a Google Sheet on a schedule, with email-on-down alerting so failures surface before they're needed in an outage.
Problem
An out-of-band management network built on cloud-managed cellular gateways is the lifeline you reach for exactly when the primary network is down — which means it has to be healthy precisely when nobody is watching it. But no one logs into the dashboard every day to check cellular signal margins or confirm that every backup VPN tunnel is actually up.
The result is the worst kind of failure: the backup path you discover is broken during the outage you needed it for.
Solution
Two scheduled Apps Script reports running against the cloud Dashboard API.
Cellular health — for every out-of-band network: the worst-of RSRP/RSRQ signal, public IP, and carrier, alongside the co-located appliance’s model, egress IP, and whether the two IPs match. One row per site, refreshed every few hours.
AutoVPN health — for every site-to-site tunnel: exported subnets, peer tunnels, and reachability, refreshed hourly.
Both write to a Google Sheet and email the moment something degrades — a cellular signal slipping into the marginal range, a tunnel dropping. The reports are read-only: they observe, they never change config.
Architecture
Apps Script (timer triggers: cellular ~4h, VPN hourly)
│ REST calls
▼
Cloud Dashboard API
├── cellular: signal (worst-of RSRP/RSRQ), public IP, carrier
├── co-located appliance: model, egress IP, IP-match check
└── AutoVPN: exported subnets, peer tunnels, reachability
│ parse / normalize
▼
Google Sheet + email-on-down
Key Decisions
Worst-of signal metric. A gateway is only as good as its weakest radio measurement. Reporting the worst of RSRP/RSRQ — not an average — means a marginal site can’t hide behind a healthy-looking mean.
Email-on-change, not just a dashboard. Out-of-band health is something you want pushed the moment it degrades, not something you have to remember to go pull. The Sheet is the record; the email is the alert.
Sheets as the surface. Shareable, nothing to host, and a trivially auditable history of every check — without standing up monitoring infrastructure to watch the monitoring network.
Read-only by design. The reports only observe. There’s no path from a reporting bug to a config change, which makes them safe to run continuously against production.
Results
- Every out-of-band cellular gateway and backup VPN tunnel checked automatically on a schedule
- Marginal cellular signal and dropped tunnels surface before they’re needed in an outage
- Co-located appliance ↔ gateway egress-IP match verified, catching misconfigured paths
- Email alert the moment a tunnel goes down — no daily manual check required
How This Scales
- More data points — add latency, data usage, and firmware tracking to the same report.
- Thresholds + escalation — tiered alerting on signal degradation, not just hard down.
- Multi-org — run across many organizations from one scheduled job.
- Single pane — feed cellular and VPN status into a unified multi-site health view alongside on-prem monitoring.
Tech Stack
- Automation: Google Apps Script (timer-triggered)
- Data source: Meraki Dashboard API (REST, read-only)
- Surface: Google Sheets
- Alerting: email-on-down