Nothing directly that you can do in IIS that can do this. I would have thought it would be easier to write a 'start' reponse to the databse when you get a request and a 'end' response when you finish.
Froma more admin/less programming side of things I would look at parsing the IIS logs (maybe easier to a database where you can index things as you like) and poll this for things like time taken that will give you an indication of a long running page. All
these are indiction though as if the client has a slow connection then you may be get a long time for the time taken field.