From: Michael Orlitzky Date: Wed, 18 Apr 2018 00:38:31 +0000 (-0400) Subject: bin/untangle-https-backup: expect and report socket timeouts. X-Git-Tag: 0.0.8~2 X-Git-Url: https://gitweb.michael.orlitzky.com/?a=commitdiff_plain;h=04cae0dd1a7186272fc174bb68dc7e0f824a8794;p=untangle-https-backup.git bin/untangle-https-backup: expect and report socket timeouts. In the last commit, a configurable socket "timeout" was added. If that timeout is reached, a socket.timeout exception will be thrown. This commit catches those exceptions in the main executable, reports them gracefully, and proceeds with the remaining backups. --- diff --git a/bin/untangle-https-backup b/bin/untangle-https-backup index 1f6a2db..25fbf9d 100755 --- a/bin/untangle-https-backup +++ b/bin/untangle-https-backup @@ -8,6 +8,7 @@ import configparser from http.client import HTTPException from os import chmod from urllib.error import HTTPError, URLError +from socket import timeout from sys import stderr from untangle.untangle import Untangle @@ -71,5 +72,12 @@ for section in config.sections(): msg = tpl.format(u.name, repr(e), u.host) print(msg, file=stderr) status = EXIT_BACKUPS_FAILED + except timeout as e: + # A socket.timeout exception occurs when something goes over + # the configured "timeout" limit. + tpl = '{:s}: socket timeout ({:s}) from {:s}' + msg = tpl.format(u.name, str(e), u.host) + print(msg, file=stderr) + status = EXIT_BACKUPS_FAILED exit(status)