diff --git a/clients/client-linux.py b/clients/client-linux.py index c3ef97f..c946300 100755 --- a/clients/client-linux.py +++ b/clients/client-linux.py @@ -28,6 +28,7 @@ import re import os import sys import json +import errno import subprocess import threading try: @@ -181,11 +182,16 @@ def _ping_thread(host, mark, port): try: b = timeit.default_timer() socket.create_connection((IP, port), timeout=1).close() - pingTime[mark] = int((timeit.default_timer()-b)*1000) + pingTime[mark] = int((timeit.default_timer() - b) * 1000) packet_queue.put(1) - except: - lostPacket += 1 - packet_queue.put(0) + except socket.error as error: + if error.errno == errno.ECONNREFUSED: + pingTime[mark] = int((timeit.default_timer() - b) * 1000) + packet_queue.put(1) + #elif error.errno == errno.ETIMEDOUT: + else: + lostPacket += 1 + packet_queue.put(0) if packet_queue.qsize() > 30: lostRate[mark] = float(lostPacket) / packet_queue.qsize() diff --git a/clients/client-psutil.py b/clients/client-psutil.py index 307f3dd..80a9810 100755 --- a/clients/client-psutil.py +++ b/clients/client-psutil.py @@ -168,9 +168,14 @@ def _ping_thread(host, mark, port): socket.create_connection((IP, port), timeout=1).close() pingTime[mark] = int((timeit.default_timer() - b) * 1000) packet_queue.put(1) - except: - lostPacket += 1 - packet_queue.put(0) + except socket.error as error: + if error.errno == errno.ECONNREFUSED: + pingTime[mark] = int((timeit.default_timer() - b) * 1000) + packet_queue.put(1) + #elif error.errno == errno.ETIMEDOUT: + else: + lostPacket += 1 + packet_queue.put(0) if packet_queue.qsize() > 30: lostRate[mark] = float(lostPacket) / packet_queue.qsize()