Use more accurate response time measurement method (fixes #44)

This commit is contained in:
Babak Farrokhi 2018-01-23 11:32:40 +03:30
parent 76b843d728
commit 1b9849c224
Signed by: farrokhi
GPG Key ID: 6B267AD85D632E9A
2 changed files with 2 additions and 4 deletions

View File

@ -156,16 +156,14 @@ def dnsping(host, server, dnsrecord, timeout, count, use_tcp=False, use_edns=Fal
if shutdown: # user pressed CTRL+C
break
try:
stime = time.perf_counter()
answers = resolver.query(host, dnsrecord, tcp=use_tcp,
raise_on_no_answer=False) # todo: response validation in future
etime = time.perf_counter()
except (dns.resolver.NoNameservers, dns.resolver.NoAnswer):
break
except dns.resolver.Timeout:
pass
else:
elapsed = (etime - stime) * 1000 # convert to milliseconds
elapsed = answers.response.time * 1000 # convert to milliseconds
response_times.append(elapsed)
r_sent = i + 1

View File

@ -205,7 +205,7 @@ def main():
print("No answer")
pass
else:
elapsed = (etime - stime) * 1000 # convert to milliseconds
elapsed = answers.response.time * 1000 # convert to milliseconds
response_time.append(elapsed)
if not quiet:
print(