add some debug info when resolving hostnames. see #5466
This commit is contained in:
parent
7795318707
commit
cbbfe98d32
|
@ -62,6 +62,7 @@ class CommonResolver():
|
||||||
self.handlers = {}
|
self.handlers = {}
|
||||||
|
|
||||||
def resolve(self, host, on_ready, type='srv'):
|
def resolve(self, host, on_ready, type='srv'):
|
||||||
|
log.debug('resolve %s type=%s' % (host, type))
|
||||||
assert(type in ['srv', 'txt'])
|
assert(type in ['srv', 'txt'])
|
||||||
if not host:
|
if not host:
|
||||||
# empty host, return empty list of srv records
|
# empty host, return empty list of srv records
|
||||||
|
@ -69,19 +70,23 @@ class CommonResolver():
|
||||||
return
|
return
|
||||||
if self.resolved_hosts.has_key(host+type):
|
if self.resolved_hosts.has_key(host+type):
|
||||||
# host is already resolved, return cached values
|
# host is already resolved, return cached values
|
||||||
|
log.debug('%s already resolved: %s')
|
||||||
on_ready(host, self.resolved_hosts[host+type])
|
on_ready(host, self.resolved_hosts[host+type])
|
||||||
return
|
return
|
||||||
if self.handlers.has_key(host+type):
|
if self.handlers.has_key(host+type):
|
||||||
# host is about to be resolved by another connection,
|
# host is about to be resolved by another connection,
|
||||||
# attach our callback
|
# attach our callback
|
||||||
|
log.debug('already resolving %s' % host)
|
||||||
self.handlers[host+type].append(on_ready)
|
self.handlers[host+type].append(on_ready)
|
||||||
else:
|
else:
|
||||||
# host has never been resolved, start now
|
# host has never been resolved, start now
|
||||||
|
log.debug('Starting to resolve %s using %s' % (host, self))
|
||||||
self.handlers[host+type] = [on_ready]
|
self.handlers[host+type] = [on_ready]
|
||||||
self.start_resolve(host, type)
|
self.start_resolve(host, type)
|
||||||
|
|
||||||
def _on_ready(self, host, type, result_list):
|
def _on_ready(self, host, type, result_list):
|
||||||
# practically it is impossible to be the opposite, but who knows :)
|
# practically it is impossible to be the opposite, but who knows :)
|
||||||
|
log.debug('Resolving result for %s: %s' % (host, result_list))
|
||||||
if not self.resolved_hosts.has_key(host+type):
|
if not self.resolved_hosts.has_key(host+type):
|
||||||
self.resolved_hosts[host+type] = result_list
|
self.resolved_hosts[host+type] = result_list
|
||||||
if self.handlers.has_key(host+type):
|
if self.handlers.has_key(host+type):
|
||||||
|
|
Loading…
Reference in New Issue