This is dual “yet another…” and utility clearance series. Once again an attempt to easily automate network availability check for a service.
The application is doing periodic TCP connectivity check and sends an email to notify on inaccessible service. If you got systems running at 2+ sites, they can be set up to check one another and inform timely on network issues.
Configuration is provided through
ConnectivityWatchdog.ini file to be put into the directory of the binary. Sample file is as follows:
[General] [Host] $(SomeUniqueIdentifer)=$(FriendlyName), tcp, $(TcpHostOrIpAddress), $(TcpPort) $(SomeUniqueIdentifer)=$(FriendlyName), tcp, $(TcpHostOrIpAddress), $(TcpPort) [Probe.TCP] Connection Time=45 ; Timeout for TCP connection attempt, seconds Success Idleness Time=60 ; Next attempt in case of successful connection, seconds Failure Idleness Time=10 ; Next attempt in case of failed connection, seconds Notification Failure Count=3, 33, 333 ; Numbers of failure attempts which trigger email notification [Notification] Delay=450 ; Delay in notification in order to combine messages into single email, seconds [Notification.SMTP] Host=smtp.gmail.com Sender=$(UserName)@gmail.com To=$(UserName)@gmail.com TLS=1 Authentication Methods=login Authentication Name=$(UserName)@gmail.com Authentication Password=$(Password)
Once the application notices TCP connectivity issues, it updates UI status and as configured (see “Notification Failure Count” value above) it will trigger a notification email:
The following are the updates on $(Host) system: * Remote host $(FriendlyName) connection SUCCEEDED after 8 failures [2013-12-12 02:15:06 - 4 minutes ago] * Remote host $(FriendlyName) connection FAILED 3 times in a row (A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond - 0x8007274c) [2013-12-12 02:12:21 - 7 minutes ago] -- System: $(Host) Time: 2013-12-12 02:19:51 Agent: Alax.Info ConnectivityWatchdog Application/184.108.40.206
All $(…) values above are placeholders.
The application has a convenient option to enable automatic startup with user logon.
- Binaries: ConnectivityWatchdog.exe