Кажеться сам разобрался, существует глобальная структура ngx_event_actions с обработчиками add_conn и del_conn. Которые, по идее, должны вызываться именно при коннекте/дисконнекте. Только одна загвоздка, в версии 1.2.2 хэндлер add_conn не вызывается никогда при использовании epoll. Вместо него нужно переопределить обработчик add и проверять входящие параметры (event = NGX_READ_EVENT, flags = NGX_CLEAR_REQUEST)
Надеюсь кому-нибудь поможет