Rapsheet: Continuous HTTP and DNS monitoring
summary
Rapsheet continuously runs 7,000 tests every 90 seconds across ~800 customer consoles, performing four DNS queries (including TXT ping) and five HTTP checks per customer to detect reachability, content correctness and blacklist hits. It’s built in Python 3 using asyncio, aiodns and aiohttp, with Magnum as an async plugin loop, InfluxDB + Grafana for visualization, Flask API, SQLite for endpoints and Docker images on Dockerhub. It works in production but practical limits appear when third‑party DNS providers impose rate limits.
AI-written summary · about
chapters (12)
- 0:00Introduction and welcome
- 1:30Problem with current monitoring
- 3:56DNS monitoring needs
- 6:22HTTP monitoring needs
- 9:11Scale and testing frequency
- 12:02Introducing Rapsheet
- 13:05Rapsheet architecture
- 16:41Async DNS and HTTP demos
- 18:56Dashboard and alerts
- 20:42Hosting and performance
- 22:06Getting started with Rapsheet
- 22:50Q&A session
related talks
17mMonitoring DNS with Open-Source Solutions
32mCustomer Centric Monitoring
39mKeeping the lights on: Application monitoring with Sensu and BatsD
26mInternet Scanning - Current State and Lessons Learned
35mReal-Time Monitoring with Grafana, StatsD and InfluxDB
20mMonitoring user experience and third-party APIs for your workloads
22mWhy is it always DNS, TLS, and bad configs?
33mGive yourself time to sleep
