projects
/
mirror
/
dsa-puppet.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Fix logic in healthy/unhealthy
[mirror/dsa-puppet.git]
/
modules
/
roles
/
files
/
mirror_health
/
mirror-health
diff --git
a/modules/roles/files/mirror_health/mirror-health
b/modules/roles/files/mirror_health/mirror-health
index
fb8241b
..
6214882
100755
(executable)
--- a/
modules/roles/files/mirror_health/mirror-health
+++ b/
modules/roles/files/mirror_health/mirror-health
@@
-14,18
+14,18
@@
HEALTH_FILE = os.path.join(OUTPUT_DIR, "health")
URL = os.environ['MIRROR_CHECK_URL']
INTERVAL = int(os.environ.get('MIRROR_CHECK_INTERVAL', '60'))
URL = os.environ['MIRROR_CHECK_URL']
INTERVAL = int(os.environ.get('MIRROR_CHECK_INTERVAL', '60'))
-latest_t
z
= 0
+latest_t
s
= 0
def retrieve_from_host(host, url):
proxies = {
'http': 'http://{}:80'.format(host),
'https': 'http://{}:443'.format(host),
}
def retrieve_from_host(host, url):
proxies = {
'http': 'http://{}:80'.format(host),
'https': 'http://{}:443'.format(host),
}
- return requests.get(url, timeout=5, proxies=proxies)
+ return requests.get(url, timeout=5, proxies=proxies
, allow_redirects=False
)
def last_modified(response):
lm = 0
def last_modified(response):
lm = 0
- if response.status_code ==
'200'
and response.headers.get('last-modified'):
+ if response.status_code ==
200
and response.headers.get('last-modified'):
lm = calendar.timegm(parsedate(response.headers['last-modified']))
return lm
lm = calendar.timegm(parsedate(response.headers['last-modified']))
return lm
@@
-34,18
+34,18
@@
while True:
for host in HOSTS:
lm = last_modified(retrieve_from_host(host, URL))
logging.debug("lm for host %s: %s", host, lm)
for host in HOSTS:
lm = last_modified(retrieve_from_host(host, URL))
logging.debug("lm for host %s: %s", host, lm)
- if lm > latest_t
z
:
- latest_t
z
= lm
+ if lm > latest_t
s
:
+ latest_t
s
= lm
local_lm = last_modified(retrieve_from_host('localhost', URL))
local_lm = last_modified(retrieve_from_host('localhost', URL))
- logging.debug("lm for localhost: %s", lm)
- if l
atest_tz <= local_lm
:
+ logging.debug("lm for localhost: %s", l
ocal_l
m)
+ if l
ocal_lm < latest_ts
:
try:
try:
- logging.
debug("considering myself unhealthy"
)
+ logging.
info("considering myself unhealthy my ts=%s latest_ts=%s", local_lm, latest_ts
)
os.remove(HEALTH_FILE)
except OSError:
pass
else:
os.remove(HEALTH_FILE)
except OSError:
pass
else:
- logging.
debug
("considering myself healthy")
+ logging.
info
("considering myself healthy")
open(HEALTH_FILE, 'w').write("OK")
sleep_time = start + INTERVAL - time.time()
logging.debug("sleeping for %d seconds", sleep_time)
open(HEALTH_FILE, 'w').write("OK")
sleep_time = start + INTERVAL - time.time()
logging.debug("sleeping for %d seconds", sleep_time)