This flows measures every 5 sec the ping times of several hosts and shows it in the Node-RED UI dashboard (see screenshot dashboard)
Moreover these ping times are also stored in an influx database (http://influxdb2.local) which are visualized by the following 2 influx db dashboards:
ping
ping-dev
Logs internet disconnect/connect in the container log file.
every 6 hours does a speedtest to measure internet upload/download speed.
macOS’s firewall can block the ICMP packets that ping uses, which will interfere with this test. Make sure you disable “Stealth Mode” in “System Preferences”->“Security & Privacy” -> “Firewall
Currently my macbook doesn't get the same IP address from DHCP - so you might need to manually update the flow for this.