How monitoring works
System architecture
CyberApis runs on a Mikrus server and uses Laravel's built-in task scheduler (cron) to periodically check your websites. By default, tests run every 5 minutes.
Check process step by step
- HTTP Request — the system sends an HTTP GET request to your URL, expecting a 2xx response code (e.g. 200 OK).
- Response analysis — response time is measured in milliseconds and the presence of expected text on the page is checked (if configured).
- Sanity check — heuristics analyze the page content for error indicators (empty page, PHP error messages, server errors).
- Render probe — if enabled, Browsershot/Puppeteer takes a screenshot in headless Chrome and visually compares it with the previous screenshot.
- Decision — based on all results, the system determines: the site is working correctly, or there is a problem.
What happens when a site is down?
When a test detects an issue, the system does not send an alert immediately. Instead:
- The test is retried on the next cycle (~5 minutes later) to rule out temporary network issues.
- After several consecutive failures, the system sends an email alert to configured addresses.
- Alerts include details: error type, URL, timestamp, and screenshot (if applicable).
- When the site recovers, a recovery notification is sent.
Where do the tests run from?
All tests run from the Mikrus server located in Poland. This means:
- Response times reflect real-world conditions from a Polish user's perspective.
- If your site is hosted abroad, response times may be slightly higher due to geographic distance.
- Tests are not geographically distributed — we do not check from multiple locations simultaneously.