Thanks Mathew.
I thought about it and even prototyped it with openresty, but I am concerned about ngx.shared.DICT.get_keys locking the whole dictionary and blocking connections that are trying to add new incoming connections.
Is there some worker datastructure available that can be read and reported from? The worker obviously knows all the connections it is handling and the various states the connections are in. So it would be easy to iterate the internal data structure with an ngx.timer.every timer.
Thanks
Sachin