Seguimiento histórico mediante métricas de llamadas WCF
En el Historial de llamadas WCF se muestran las métricas históricas para las llamadas de WCF que llegan a los servicios de WCF .NET Framework 4 y WF administrados por AppFabric. Las métricas resumidas Finalizado y Errores proporcionan un total acumulado de las llamadas recibidas de WCF correctas y con errores. Puede expandir la sección Historial de llamadas WCF (mediante clic en la flecha abajo o en cualquier lugar excepto en los vínculos de métricas resumidas de la barra de título Historial de llamadas WCF) para mostrar los cinco principales servicios con Llamadas completadas o Excepciones de servicio. Esta acción también muestra el número de Errores - Agrupados por tipos comunes. Puede usar estos valores de resumen de nivel superior, y sus vistas detalladas correlacionadas descendentes, para supervisar el historial de llamadas WCF para los servicios.
Métricas del historial de llamadas WCF
La sección Historial de llamadas WCF del panel de AppFabric ofrece una vista resumida de las llamadas de servicio de WCF en el cuadro de encabezado sombreado en el que se encuentra el título Historial de llamadas WCF. Las métricas siguientes ofrecen una vista rápida del resumen de llamadas WCF que finalizaron correctamente y las que no lo hicieron:
La métrica resumida Finalizado es un total acumulado de las llamadas de WCF recibidas que finalizaron sin generar error ni excepción, lo que produce el tipo de evento de WCF OperationCompleted.
La métrica resumida Errores es un total acumulado que representa todas las excepciones relacionadas con WCF y los errores definidos por el usuario que se producen en toda la pila de WCF. Este recuento incluye, entre otros, los errores que resulten del número de llamadas erróneas y con errores.
La métrica Resultados de limitaciones proporciona un recuento del número de períodos de limitación de WCF que experimente cualquiera de los servicios implementados en el ámbito aplicable. Un período de limitación único empieza cuando se excede el umbral de limitación de WCF. Finaliza cuando el rendimiento disminuye por debajo del 70% del umbral de limitación.
Debajo de las métricas resumidas se encuentran las siguientes métricas de servicio que ofrecen un resumen del número de servicios dentro de categorías específicas de llamadas por orden descendente:
Llamadas completadas - Agrupados por servicio (5 principales): los cinco servicios principales con el mayor número total de llamadas WCF completadas dentro del período de tiempo especificado.
Excepciones de servicio - Agrupados por servicio (5 principales): los cinco servicios principales con el mayor número total de excepciones dentro del período de tiempo especificado.
Errores - Agrupados por tipos comunes: agrupación del número total de excepciones de servicio o de errores definidos por el usuario. El recuento de excepciones de servicio también se desglosa más según dos de las causas más comunes: llamadas erróneas y llamadas con errores. Las excepciones de servicio también pueden deberse a problemas diferentes a las llamadas erróneas o con errores, tales como errores de activación.
No todos los eventos de WCF supervisados se incluyen en las columnas Llamadas completadas - Agrupados por servicio (5 principales) o Excepciones de servicio - Agrupados por servicio (5 principales) del panel. Los eventos mostrados en las columnas “5 principales” no incluyen las limitaciones emitidas desde el servicio de AppFabric interno que administra los extremos y los eventos. Sólo los eventos que tienen una ruta de acceso virtual al servicio completa aparecerán en estas dos columnas. Los eventos generados por encima de la pila de canal de WCF, tal como las devoluciones de llamadas y las excepciones de servicio, no contienen una ruta de acceso virtual al servicio completa. Los eventos que no contienen una ruta de acceso virtual al servicio completa se excluyen de los recuentos. De este modo, sólo los servicios de usuario, y no las aplicaciones de usuario, aparecen en los valores de los contadores.
Página Eventos supervisados
Puede usar la página Eventos supervisados para obtener una vista histórica de los eventos que se produjeron durante una secuencia en particular de llamadas WCF para una instancia de servicio. Al hacer clic en cualquier métrica resumida (por ejemplo, Finalizado), o en uno de los vínculos del servicio bajo una columna de la sección Historial de llamadas WCF (por ejemplo, bajo la columna Llamadas completadas), irá a la página Eventos supervisados.
El vínculo en el que hace clic para ir desde la página Panel de AppFabric a la página Eventos supervisados se usa para filtrar la llamada de WCF y los datos de eventos, de modo que lo que aparece enumerado en la página Eventos supervisados es específico del vínculo de origen. Por ejemplo, al hacer clic en un vínculo de entrada de servicio bajo la columna Excepciones de servicio - Agrupados por servicio (5 principales), irá a la página Eventos supervisados. Enumera los eventos filtrados por tipo de evento de servicio (excepciones de WCF en este caso) y la hora de emisión que corresponde a la métrica y el período de tiempo seleccionado en el panel de AppFabric.
Sin embargo, puede cambiar el valor de uno o varios campos (por ejemplo, Eventos) dentro del marco Resumen de consulta para cambiar el resultado inicial y solucionar más problemas sobre un tipo de evento específico. Por ejemplo, si la métrica original que le llevó a la página Eventos supervisados era Excepciones de WCF, puede cambiar el valor del campo Eventos por Todos los eventos de WCF, y luego hacer clic en Ejecutar consulta para ver los distintos resultados.
Puede usar las opciones siguientes para filtrar el tipo de eventos que se muestran:
Todos los eventos de WCF: muestra todos los eventos de WCF disponibles en el almacén de seguimiento incluidos, entre otros, las llamadas de WCF completadas, las excepciones de WCF, las llamadas de WCF erróneas y las llamadas de WCF con error.
Llamadas de WCF completadas: muestra todas las llamadas de WCF completadas.
Todos los errores de WCF: muestra todos los eventos emitidos en el nivel de error: excepciones de servicio y eventos de error definidos por el usuario.
Excepciones de WCF: muestra todas las excepciones de servicio de WCF.
Errores de WCF definidos por el usuario: muestra todos los eventos definidos por el usuario que se emiten en el nivel de error.
Llamadas de WCF con error: muestra todas las llamadas de WCF erróneas.
Llamadas de WCF con error: muestra todas las llamadas de WCF con error.
Resultados de limitaciones de WCF: muestra todos los eventos de limitaciones de WCF. Cada evento representa un período de limitación y se emite la primera vez que se excede el umbral de limitaciones de WCF.
Todos los eventos de WF: muestra todos los eventos de WF.
Para obtener más información, vea Página Eventos supervisados.
Solución de problemas mediante métricas de historial de llamadas WCF de seguimiento
Puede ensamblar la información precedente en un enfoque de solución de problemas mediante la sección Historial de llamadas WCF para supervisar las llamadas de WCF en los servicios de .NET Framework. Cuando consulta inicialmente la sección Historial de llamadas WCF, obtiene una vista resumida de alto nivel del estado de las llamadas de WCF. Puede ver rápidamente si existe un problema en el nivel de llamada de WCF según las excepciones, las llamadas erróneas y las llamadas con error que se hayan producido. Si las métricas resumidas Excepciones de servicio - Agrupados por servicio (5 principales) o Errores - Agrupados por tipos comunes contienen un valor que no es cero, indica dónde se puede haber producido un problema. Cada métrica resumida está vinculada a la página Eventos supervisados, donde puede ver las métricas detalladas explícitas de los datos de llamada de WCF que la página inicial Panel de AppFabric resumió en el nivel superior. Estos datos sin procesar ofrecen información adicional que permite aislar un problema que rodea a las llamadas de WCF.
Tomemos un escenario en el que use la sección Historial de llamadas WCF para supervisar llamadas de WCF para los servicios de WCF o WF en un ámbito determinado para cualquier problema. Si ve que la métrica resumida Excepciones no es cero, la expansión del widget le permitirá ver un desglose de las excepciones según los cinco servicios principales. Esto le permite centrarse en los servicios con un número mayor de posibles problemas. A continuación, puede centrarse en un servicio de problemas en particular y especificar los detalles; para ello, vaya a la página de enumeración y cambie los valores de la consulta.
Suponga que el encabezado resumido Errores del widget Historial de llamadas WCF contiene un valor no cero que significa que se produjeron algunos errores. Puede expandir el widget Historial de llamadas WCF y consultar la columna Excepciones de servicio - Agrupados por servicio (5 principales) para ver los cinco servicios principales que encontraron el mayor número de excepciones durante el período de tiempo seleccionado. También puede consultar la columna Errores - Agrupados por tipos comunes para ver un desglose de los tipos de errores: excepciones de servicio (principalmente provocadas por llamadas erróneas y llamadas con error) o errores definidos por el usuario. Para obtener más detalles sobre los errores o las excepciones, puede hacer clic en uno de los vínculos de servicio para ir a la página Eventos supervisados.
Nota
Si el Servicio X es uno de los cinco servicios principales, se mostrará aquí. En este caso, puede hacer clic en su vínculo de servicio para ir a la página Eventos supervisados. Si el servicio X no es uno de los cinco servicios principales, puede hacer clic en cualquiera de las métricas de la sección para ir a la página Eventos supervisados. En ella puede modificar la consulta existente según corresponda (es decir, agregar la condición apropiada de nombre de servicio).
La página Eventos supervisados se llena con una vista histórica de las excepciones producidas en el ámbito específico de la jerarquía X de IIS. Puede hacer clic en uno de los eventos de excepción de WCF de la lista (todavía en la página Eventos supervisados) para ver los elementos específicos de la excepción en el panel Detalles de la parte inferior de la página. En el panel Detalles, puede ver información sobre la excepción dentro de las pestañas Información general, Variables supervisadas o Errores. La pestaña Información general contiene información general sobre el evento, tal como E2EActivityID (que se usa para la correlación en el seguimiento de extremo a extremo), EventType, ExceptionTypeName, EventSourceId y otra información relacionada con eventos. La pestaña Variables supervisadas muestra los valores de las variables supervisadas explícitamente que se almacenan en el evento. La pestaña Errores proporciona información de excepción sobre el error cuando está disponible. Puede usar esta información para comprender mejor las excepciones de WCF y solucionar los problemas.
Si necesita más información de contexto sobre la excepción de WCF, puede hacer clic con el botón secundario del mouse en el evento de la lista y, a continuación, hacer clic en Ver instancia de WF supervisada. Estas funciones sólo están disponibles para las excepciones de servicio de WCF emitidas desde los servicios de flujo de trabajo, según las que la página Instancias de WF supervisadas mostrará todos los eventos disponibles para la instancia principal. También puede realizar una selección en el menú contextual para Ver todos los eventos asociados de una llamada de WCF. Esto actualiza la página Eventos supervisados y la llena con todos los eventos relacionados con el evento inicial.
Nota
Para sacar provecho de la opción Ver todos los eventos asociados, el nivel de seguimiento para la aplicación se debe establecer en Seguimiento de extremo a extremo o superior. Este nivel indica la infraestructura de seguimiento para recopilar eventos de transferencia que asocian un identificador de actividad de extremo a extremo (E2EActivityId) con otro.
De forma alternativa, puede consultar la columna Excepciones de servicio - Agrupados por servicio (5 principales) y ver el número de Llamadas erróneas o Llamadas con errores. El número total de Llamadas erróneas o Llamadas con errores contribuye al número total de Excepciones de WCF, según se representa en el panel de resumen de la sección. Al hacer clic en el vínculo de alguno de ellos, irá a la página Eventos supervisados. Según el vínculo en el que hizo clic, verá una lista de eventos enumerados para Llamadas de WCF con error o Llamadas de WCF con error respectivamente. Tal como se describe arriba, la selección de uno de los eventos de llamada en la lista enumerada resulta en más información en el panel Detalles. También puede hacer clic con el botón secundario del mouse en la opción Ver todos los eventos asociados o Ver instancia de WF supervisada, si procede.
Para obtener información acerca de cómo obtener información más específica sobre un evento supervisado para ayudarle a resolver un problema, vea Página Eventos supervisados.
Visualización de información de errores de WCF
AppFabric muestra la información de error basada en WCF únicamente cuando el nivel de seguimiento de una aplicación está configurado como mínimo en el nivel de seguimiento de extremo a extremo. Este nivel captura el flujo de mensajes de WCF entre los servicios y la relación entre eventos de WF y WCF. Para los niveles de seguimiento por debajo del seguimiento de estado, éste inclusive, la información de error basada en WCF no aparecerá en las secciones siguientes:
Las columnas Errores o Excepciones de servicio de la sección Historial de llamadas WCF de la página Panel de AppFabric.
La pestaña Errores del panel Detalles de la página Eventos supervisados.
Cualquier sección de la página Eventos supervisados que muestre eventos de WCF como resultado de criterios de consulta.
Por ejemplo, la pestaña Errores de la página Eventos supervisados usa los eventos de transferencia de WCF para recopilar información de excepción del evento de excepción del modelo de servicio que corresponde a un evento de llamada de WCF errónea o con error. Si la aplicación que se supervisa está configurada para usar un nivel de seguimiento por debajo del nivel Seguimiento de extremo a extremo, no se capturarán los eventos de transferencia de WCF. Esto lleva a que no se muestren valores en la pestaña Errores en el panel Detalles.
Si usa el nivel Seguimiento de extremo a extremo para capturar eventos de transferencia y no desea recopilar eventos de WF adicionales, debe realizar los pasos siguientes:
Abra el archivo de configuración raíz del servidor en C:\Windows\Microsoft.NET\Framework(64)\v4.0.xxx\CONFIG\Web.config.
Copie en el Portapapeles todo el código entre las entradas
<trackingProfile name="HealthMonitoring Tracking Profile">
y</trackingProfile>
, éstas inclusive. Un ejemplo de lo que va a copiar es el siguiente.<trackingProfile name="HealthMonitoring Tracking Profile"> <workflow activityDefinitionId="*"> <workflowInstanceQueries> <workflowInstanceQuery> <states> <state name="Started" /> <state name="Completed" /> <state name="Terminated" /> <state name="Canceled" /> <state name="Unsuspended" /> <state name="Persisted" /> <state name="Aborted" /> <state name="UnhandledException" /> </states> </workflowInstanceQuery> </workflowInstanceQueries> <activityStateQueries> <activityStateQuery activityName="*"> <states> <state name="Closed" /> </states> </activityStateQuery> </activityStateQueries> <faultPropagationQueries> <faultPropagationQuery faultSourceActivityName="*" faultHandlerActivityName="*" /> </faultPropagationQueries> <customTrackingQueries> <customTrackingQuery name="*" activityName="*" /> </customTrackingQueries> </workflow> </trackingProfile>
Edite el archivo Web.config de la aplicación. Asegúrese de que existe una anidación de elementos completa y válida de
<system.serviceModel><tracking><profiles><trackingProfile>
en la que se va a pegar el contenido del elemento<trackingProfile>
en los pasos siguientes.Al principio de la sección
<system.serviceModel><tracking><profiles>
, agregue<remove name=”EndToEndMonitoring Tracking Profile” />
.En la misma sección, justo debajo de la etiqueta
remove
recién agregada, pegue el fragmento de código copiado en el Portapapeles durante el paso 2.Reemplace el texto
HealthMonitoring Tracking Profile
porEndToEndMonitoring Tracking Profile
en el archivo Web.config de la aplicación. Guarde el archivo y salga del editor.Con el control deslizante del cuadro de diálogo Configurar WCF y WF para la aplicación, cambie el Nivel de seguimiento de la aplicación por Extremo a extremo. AppFabric usará la entrada del perfil de seguimiento de extremo a extremo local del archivo Web.config de la aplicación, que no es más que el perfil de seguimiento para el nivel de seguimiento de estado disimulado como una entrada de perfil de seguimiento de extremo a extremo.
Vea también
Referencia
2011-12-05