Hay algunos buenos enlaces para agrupaciones de conexiones de monitoreo. Realice una búsqueda en google de "supervisión del grupo de conexiones .net".
Un artículo que me he referido hace un tiempo era Bill Vaughn's article (Tenga en cuenta que esto es viejo, pero todavía contiene información útil). Tiene algo de información sobre el monitoreo de grupos de conexiones, pero también algunos datos importantes sobre dónde podrían ocurrir las filtraciones.
Para el seguimiento, sugiere;
"Supervisión de la agrupación de conexiones
Bueno, por lo que se abrió una conexión y la cerró y me gustaría saber si la conexión sigue en su lugar-languideciendo en la agrupación de conexiones en un colchón aire. Bueno ., hay varias formas de determinar cuántas conexiones están todavía en su lugar (aún conectado) e incluso lo que están haciendo discuto varios de estos aquí y en mi libro:
· Utilice el Analizador de SQL con el SQLProfiler TSQL_Replay plantilla para la traza. Para aquellos de ustedes que estén familiarizados con el Analizador, , esto es más fácil que el sondeo usando SP_WHO.
· Ejecute SP_WHO o SP_WHO2, que devuelve información de la tabla sysprocesses en todos los procesos operativos que muestran el estado actual de cada proceso. En general, hay un proceso de servidor SPID por cada conexión . Si nombró su conexión, utilizando el argumento Nombre de la aplicación en la cadena de conexión, será fácil de encontrar.
· Utilice el Monitor de rendimiento (PerfMon) para supervisar las piscinas y conexiones. Discuto esto en detalle a continuación.
· contadores de rendimiento del monitor en el código. Esta opción le permite mostrar o simplemente monitorear el estado de su grupo de conexiones y la cantidad de conexiones establecidas. Discuto esto en una sección posterior en este documento."
Editar:
Como siempre, echa un vistazo a algunos de los other similar posts aquí en SO
Segunda edición:
Una vez que haya confirmado que las conexiones no son siendo recuperado por el grupo, otra cosa que podría intentar es utilizar el evento StateChange para confirmar cuándo se están abriendo y cerrando las conexiones. Si encuentra que hay muchas más El estado cambia a abierto que a cerrado, entonces eso indicaría que hay filtraciones en alguna parte. También puede registrar los datos en el evento modificado por el estado junto con una marca de tiempo, y si tiene otro registro en su aplicación, puede comenzar a analizar los archivos de registro para las instancias en las que parece haber cambios de estado de cerrado a abierto, con no corresponde abierto a cerrado. Consulte this link para obtener más información sobre cómo manejar StateChangedEvent.
¿Es posible que tenga más usuarios que conexiones en la piscina? –
¿Almacena sus referencias de conexión en estado de sesión o en otro lugar que tenga una vida útil que exceda una solicitud http? – Jan
No, solo se abrieron y (supuestamente) se cerraron en cada solicitud. – Jesse