hyperjumptech/monika

Monitor Network Latency

Opened this issue · 1 comments

Summary

Monika monitors the target server by sending requests. When Monika sends many requests and encounters network congestion, users may find it challenging to differentiate if the problem lies with the target server or Monika's network.

Proposal

To determine if Monika is experiencing network issues, it will periodically send pings (every 5 seconds) to public servers such as 1.1.1.1 (Cloudflare) or 8.8.8.8 (Google) in standalone mode, and to the Symon server in Symon mode. After each ping, Monika will print the response time in standalone mode and store and send the response time to Symon in Symon mode.

The benefit of sending pings to the Symon server is that if the Symon server experiences issues, all Monika instances will have poor ping results. It helps to monitor the Symon server. However, this approach may burden the Symon server.

In cases where the ping exceeds a certain threshold (e.g., > 250ms), Monika will stop probing until the ping stabilizes.

Definition of Success

User will be able to access information on Monika's current and historical latency.

Another thing to consider is if Monika is running behind proxy or in VPN which may block ICMP for ping requests.