from stem.util.connection import get_connections (v1.3) sometimes throws an exception
eg for an exit relay of ~ 2000 inbound+outbound connections sometimes the following code snippet
...
try:
connections = get_connections(resolver, process_pid = pid, process_name = 'tor')
print " connections: %4i" % len(connections)
...
except Exception as exc:
print exc
gives :
platform supports connection resolution via: proc, netstat, lsof, ss (picked: proc)
1 instance(s) of tor: 2223 (picked: 2223)
unable to determine file descriptor destination: /proc/2223/fd/985
IMO if the "proc" resolver fails due to some race conditions for a particular connection it should deliver data for all the other connections.