[Python-Dev] Internal counter to debug leaking file descriptors (original) (raw)

Giampaolo RodolĂ  g.rodola at gmail.com
Fri Sep 3 12:09:50 CEST 2010


Of course it would be nice to get access to FD stack so that a full filename can also be retrieved in this case.

On Linux, this can be easily achieved by using /proc. You can take a look at how this is done in the current development version of psutil: http://code.google.com/p/psutil/source/browse/trunk/psutil/_pslinux.py?spec=svn633&r=630#266 Usage:

import psutil, os thisprocess = psutil.Process(os.getpid()) f = open('file.ext', 'w') thisprocess.getopenfiles() ['/home/giampaolo/svn/psutil/file.ext']

Same for sockets, a bunch of lines later: http://code.google.com/p/psutil/source/browse/trunk/psutil/_pslinux.py?spec=svn633&r=630#284

import socket s = socket.createconnection(('google.com', 80)) thisprocess.getconnections() [connection(family=2, type=1, local_address=('192.168.1.43', 38067), remote_address=('72.14.234.104', 80), status='ESTABLISHED')]

Hope this helps

--- Giampaolo http://code.google.com/p/pyftpdlib/ http://code.google.com/p/psutil/



More information about the Python-Dev mailing list