diff --git a/diagnostic.py b/diagnostic.py index ba60cd0..f6527f2 100755 --- a/diagnostic.py +++ b/diagnostic.py @@ -292,7 +292,7 @@ def check_buffer_change_rate(spinner): change_decrease = 0 if time_slept >= sleep_max: - return_flag = elements_in_inlist_init < elements_in_list or elements_in_list == 0 + return_flag = elements_in_list == 0 or (elements_in_list - elements_in_inlist_init < 3) return_text = f'Buffer is consumed {"faster" if return_flag else "slower" } than being populated' break @@ -329,7 +329,7 @@ def check_dispatcher_status(spinner): \t➥ Consider restarting it: {pgrep_dispatcher_output}''' break time.sleep(sleep_duration) - spinner.text = f'No response yet' + spinner.text = f'Dispatcher status: No response yet' time_slept += sleep_duration else: return_flag = True @@ -343,10 +343,13 @@ def check_dispatcher_status(spinner): def check_server_listening(spinner): url = f'{HOST}:{PORT}/_get_log_head' spinner.text = f'Trying to connect to {url}' - r = requests.get(url) + try: + r = requests.get(url) + except requests.exceptions.ConnectionError: + return (False, f'Can\'t connect to {url}') return ( r.status_code == 200, - f'Server is {"not " if r.status_code != 200 else ""}running. Status code [{r.status_code}]' + f'{url} {"not " if r.status_code != 200 else ""}reached. Status code [{r.status_code}]' ) @@ -390,8 +393,8 @@ def start_diagnostic(): if check_buffer_queue() is not True: check_buffer_change_rate() check_dispatcher_status() - check_server_listening() - check_server_dynamic_enpoint() + if check_server_listening(): + check_server_dynamic_enpoint() def main():