I encountered another issue with dpinger. I changed one unimportant parameter in the WAN interface (CIDR length for the alias IPv4 address). Pressed save and apply and noticed that my IP switched over to the failover WAN2, then back to WAN1. I looked at the logs and found this:
php-fpm 	89297 	/interfaces.php: The command '/usr/local/bin/dpinger -S -r 0 -i WAN_DHCP -B x.x.x.x -p /var/run/dpinger_WAN_DHCP~x.x.x.x~y.y.y.y.pid -u /var/run/dpinger_WAN_DHCP~x.x.x.x~y.y.y.y.sock -C "/etc/rc.gateway_alarm" -d 1 -s 500 -l 2000 -t 30000 -A 1000 -D 500 -L 20 y.y.y.y.>/dev/null' returned exit code '1', the output was ''
It's weird that I saw changes for WAN3 that I haven't touched. I think the developers should have a look at the whole multi-WAN system. More logs:
Aug 4 19:02:27 	php-fpm 	73902 	/rc.filter_configure_sync: Default gateway setting Interface WAN_DHCP Gateway as default.
Aug 4 19:02:27 	php-fpm 	73902 	/rc.filter_configure_sync: Gateway, switch to: WAN_DHCP
Aug 4 19:02:25 	upsmon 	11497 	Startup successful
Aug 4 19:02:25 	php-fpm 	48340 	/rc.start_packages: Starting service nut
Aug 4 19:02:25 	upsmon 	85376 	Signal 15: exiting
Aug 4 19:02:25 	php-fpm 	48340 	/rc.start_packages: Stopping service nut
Aug 4 19:02:25 	php-fpm 	48340 	/rc.start_packages: Restarting/Starting all packages.
Aug 4 19:02:24 	check_reload_status 	483 	Starting packages
Aug 4 19:02:24 	php-fpm 	89297 	/interfaces.php: Creating rrd update script
Aug 4 19:02:24 	check_reload_status 	483 	Reloading filter
Aug 4 19:02:24 	php-fpm 	89297 	/interfaces.php: Removing static route for monitor m.m.m.m and adding a new route through n.n.n.n [this is untouched WAN3]
Aug 4 19:02:24 	php-fpm 	89297 	/interfaces.php: Removing static route for monitor y.y.y.y and adding a new route through x1.x1.x1.x1 [this is WAN1]
Aug 4 19:02:24 	php-fpm 	89297 	/interfaces.php: Resyncing OpenVPN instances for interface WAN.
Aug 4 19:02:23 	php 	77068 	notify_monitor.php: Message sent to X OK
Aug 4 19:02:22 	php-fpm 	202 	/rc.dyndns.update: phpDynDNS (): (Success) IP Address Updated Successfully!
Aug 4 19:02:22 	php-fpm 	202 	/rc.dyndns.update: phpDynDNS: updating cache file /conf/dyndns_PreferWANcustom''0.cache: k.k.k.k  [this is WAN2 IP]
Aug 4 19:02:21 	check_reload_status 	483 	updating dyndns wan
Aug 4 19:02:19 	dhcpleases 	50889 	Could not deliver signal HUP to process 71960: No such process.
Aug 4 19:02:18 	check_reload_status 	483 	Restarting IPsec tunnels
Aug 4 19:02:18 	php-fpm 	775 	/rc.filter_configure_sync: Gateway, switch to: WAN2_PPPOE
Aug 4 19:02:18 	php-fpm 	89297 	/interfaces.php: Default gateway setting Interface WAN2_PPPOE Gateway as default.
Aug 4 19:02:18 	php-fpm 	89297 	/interfaces.php: Gateway, switch to: WAN2_PPPOE
Aug 4 19:02:17 	check_reload_status 	483 	Reloading filter
Aug 4 19:02:17 	php-fpm 	98601 	/rc.newwanip: rc.newwanip: on (IP address: x.x.x.x) (interface: WAN[wan]) (real interface: igb0).
Aug 4 19:02:17 	php-fpm 	98601 	/rc.newwanip: rc.newwanip: Info: starting on igb0.
Aug 4 19:02:16 	check_reload_status 	483 	rc.newwanip starting igb0
Aug 4 19:02:16 	php-fpm 	89297 	/interfaces.php: Error starting gateway monitor for WAN_DHCP
Aug 4 19:02:16 	php-fpm 	89297 	/interfaces.php: The command '/usr/local/bin/dpinger -S -r 0 -i WAN_DHCP -B x.x.x.x -p /var/run/dpinger_WAN_DHCP~x.x.x.x~y.y.y.y.pid -u /var/run/dpinger_WAN_DHCP~x.x.x.x~y.y.y.y.sock -C "/etc/rc.gateway_alarm" -d 1 -s 500 -l 2000 -t 30000 -A 1000 -D 500 -L 20 y.y.y.y.>/dev/null' returned exit code '1', the output was ''
Aug 4 19:02:16 	php-fpm 	89297 	/interfaces.php: Removing static route for monitor m.m.m.m and adding a new route through n.n.n.n  [this is really weird - this is untouched WAN3]