check_openwrt_bssid: improve retries
This commit is contained in:
parent
5fab8adf54
commit
b66ba4fa37
|
@ -21,7 +21,7 @@ def main(args):
|
||||||
ssh = paramiko.SSHClient()
|
ssh = paramiko.SSHClient()
|
||||||
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
|
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
|
||||||
|
|
||||||
for _ in range(args.retries + 1):
|
for retry_i in range(args.retries):
|
||||||
try:
|
try:
|
||||||
ssh.connect(args.host, username='root')
|
ssh.connect(args.host, username='root')
|
||||||
except paramiko.ssh_exception.AuthenticationException:
|
except paramiko.ssh_exception.AuthenticationException:
|
||||||
|
@ -82,9 +82,23 @@ def main(args):
|
||||||
print(json.dumps(cells))
|
print(json.dumps(cells))
|
||||||
sys.exit(nagios.STATE_UNKNOWN)
|
sys.exit(nagios.STATE_UNKNOWN)
|
||||||
|
|
||||||
if args.target_mac not in list(cells.keys()):
|
# ============================================
|
||||||
time.sleep(10)
|
# Check if we need to retry
|
||||||
continue
|
|
||||||
|
if retry_i + 1 < args.retries:
|
||||||
|
if args.target_mac not in list(cells.keys()):
|
||||||
|
time.sleep(10)
|
||||||
|
continue
|
||||||
|
|
||||||
|
if not cells[args.target_mac]['ssid']:
|
||||||
|
time.sleep(10)
|
||||||
|
continue
|
||||||
|
|
||||||
|
if cells[args.target_mac]['ssid'] != args.expected_ssid:
|
||||||
|
time.sleep(10)
|
||||||
|
continue
|
||||||
|
|
||||||
|
# ============================================
|
||||||
|
|
||||||
ap_data = cells[args.target_mac]
|
ap_data = cells[args.target_mac]
|
||||||
computed_quality = int(try_float(ap_data['quality'][0]) / try_float(ap_data['quality'][1]) * 100)
|
computed_quality = int(try_float(ap_data['quality'][0]) / try_float(ap_data['quality'][1]) * 100)
|
||||||
|
@ -129,7 +143,7 @@ if __name__ == '__main__':
|
||||||
parser = argparse.ArgumentParser()
|
parser = argparse.ArgumentParser()
|
||||||
parser.add_argument('--host', required=True, help='The host to SSH into.')
|
parser.add_argument('--host', required=True, help='The host to SSH into.')
|
||||||
parser.add_argument('--interface', required=True, help='The wireless interface to use (example: `wlan0`).')
|
parser.add_argument('--interface', required=True, help='The wireless interface to use (example: `wlan0`).')
|
||||||
parser.add_argument('--retries', default=3, help='If the target AP is not found, do this many retries.')
|
parser.add_argument('--retries', default=4, help='If the target AP is not found, do this many retries.')
|
||||||
parser.add_argument('--print', action='store_true', help='Print the found APs.')
|
parser.add_argument('--print', action='store_true', help='Print the found APs.')
|
||||||
parser.add_argument('--target-mac', required=True, help='The MAC address of the target AP.')
|
parser.add_argument('--target-mac', required=True, help='The MAC address of the target AP.')
|
||||||
parser.add_argument('--expected-ssid', required=True, help="The AP's expected SSID.")
|
parser.add_argument('--expected-ssid', required=True, help="The AP's expected SSID.")
|
||||||
|
|
Loading…
Reference in New Issue