Event loop maintains a set of sockets that are being waited for with callbacks.
It should be possible to figure out which task is waiting for which socket.
Sockets could be reported with their type, state, direction (e.g. TCP, connected to 1.2.3.4:8080, read).