Compartir a través de


Diagnóstico de escenarios comunes con Service Fabric

En este artículo se muestran escenarios comunes que los usuarios se encuentran en el área de supervisión y diagnóstico con Service Fabric. Los escenarios presentados cubren los 3 niveles de Service Fabric: aplicación, clúster e infraestructura. Cada solución utiliza Application Insights y los registros de Azure Monitor —las herramientas de supervisión de Azure— para completar cada escenario. Los pasos en cada solución proporcionan a los usuarios una introducción sobre cómo usar Application Insights y los registros de Azure Monitor en el contexto de Service Fabric.

Nota:

Este artículo se ha actualizado recientemente para usar el término registros de Azure Monitor en lugar de Log Analytics. Los datos de registro siguen almacenándose en un área de trabajo de Log Analytics y siguen recopilándose y analizándose por el mismo servicio de Log Analytics. Estamos actualizando la terminología para reflejar mejor el rol de los registros de Azure Monitor. Consulte Azure Monitor terminology changes (Cambios en la terminología de Azure Monitor) para obtener más información.

Requisitos previos y recomendaciones

Las soluciones en este artículo utilizan las siguientes herramientas. Se recomienda tenerlas instaladas y configuradas:

¿Cómo puedo ver las excepciones no controladas en mi aplicación?

  1. Vaya al recurso de Application Insights con el que la aplicación está configurada.

  2. Haga clic en Buscar en la parte superior izquierda. Después, haga clic en Filtrar en el panel siguiente.

    Introducción a AI

  3. Verá una gran cantidad de tipos de eventos (seguimientos, solicitudes, eventos personalizados). Elija "Excepción" como filtro.

    Lista de filtros de AI

    Al hacer clic en una excepción de la lista, puede consultar más detalles, incluido el contexto de servicio si usa el SDK de Application Insights para Service Fabric.

    Excepción de AI

¿Cómo puedo ver qué llamadas HTTP se usan en mis servicios?

  1. En el mismo recurso de Application Insights, puede filtrar por "solicitudes" en lugar de excepciones para ver todas las solicitudes realizadas.

  2. Si usa el SDK de Application Insights para Service Fabric, verá una representación visual de los servicios conectados entre sí, y el número de solicitudes correctas e incorrectas. En la izquierda, haga clic en "Mapa de aplicación"

    Hoja de mapa de aplicación de IAMapa de aplicación de IA

    Para más información sobre el mapa de aplicación, consulte la documentación de Mapa de aplicación

Cómo puedo crear una alerta cuando un nodo deja de funcionar

  1. El clúster de Service Fabric registra los eventos de nodo. Vaya al recurso de solución de Service Fabric Analytics llamado ServiceFabric(nombreGrupoRecursos)

  2. Haga clic en el gráfico situado en la parte inferior de la hoja "Resumen"

    Solución de registros de Azure Monitor

  3. Aquí tiene muchos gráficos e iconos que muestran varias métricas. Haga clic en uno de los gráficos y le llevará a la búsqueda de registros. Aquí puede consultar los eventos de clúster o los contadores de rendimiento.

  4. Escriba la siguiente consulta. Estos identificadores de evento se encuentran en la referencia de eventos de nodo.

    ServiceFabricOperationalEvent
    | where EventID >= 25622 and EventID <= 25626
    
  5. Haga clic en "Nueva regla de alertas" en la parte superior y, ahora, cada vez que llegue un evento basado en esta consulta, recibirá una alerta por el método de comunicación elegido.

    Nueva alerta de los registros de Azure Monitor

¿Cómo puedo recibir notificaciones de reversiones de actualizaciones de la aplicación?

  1. En la misma ventana de búsqueda de registros, escriba la siguiente consulta para buscar reversiones de actualizaciones. Estos identificadores de evento se encuentran en la referencia de eventos de aplicación.

    ServiceFabricOperationalEvent
    | where EventID == 29623 or EventID == 29624
    
  2. Haga clic en "Nueva regla de alertas" en la parte superior y, ahora, cada vez que llegue un evento basado en esta consulta, recibirá una alerta.

¿Cómo puedo ver las métricas de contenedor?

En la misma vista con todos los gráficos, verá algunos iconos del rendimiento de los contenedores. Necesita el agente de Log Analytics y la solución de supervisión de contenedores para que estos iconos se llenen.

Métricas de contenedor de Log Analytics

Nota:

Para instrumentar los datos de telemetría desde dentro del contenedor, debe agregar el paquete NuGet de Application Insights para los contenedores.

¿Cómo puedo supervisar los contadores de rendimiento?

  1. Una vez agregado el agente de Log Analytics al clúster, debe agregar los contadores de rendimiento concretos cuyo seguimiento quiere realizar. Navegue a la página del área de trabajo de Log Analytics en el portal; en la página de la solución, la pestaña del área de trabajo está en el menú izquierdo.

    Pestaña Área de trabajo de Log Analytics

  2. Una vez que esté en la página del área de trabajo, haga clic en "Configuración avanzada" en el mismo menú izquierdo.

    Configuración avanzada de Log Analytics

  3. Haga clic en Datos > Contadores de rendimiento de Windows (Datos > Contadores de rendimiento de Linux, en el caso de las máquinas Linux) para comenzar a recopilar los contadores específicos de los nodos mediante el agente de Log Analytics. Estos son ejemplos del formato de los contadores

    • .NET CLR Memory(<ProcessNameHere>)\\# Total committed Bytes

    • Processor(_Total)\\% Processor Time

      En la guía de inicio rápido, VotingData y VotingWeb son los nombres de proceso utilizados, por lo que el seguimiento de estos contadores tendrá el siguiente aspecto:

    • .NET CLR Memory(VotingData)\\# Total committed Bytes

    • .NET CLR Memory(VotingWeb)\\# Total committed Bytes

      Contadores de rendimiento de Log Analytics

  4. Esto le permitirá ver cómo la infraestructura está tratando las cargas de trabajo, y establecer las alertas correspondientes en función de la utilización de los recursos. Por ejemplo, puede establecer una alerta si el uso total del procesador es superior al 90 % o inferior al 5 %. El nombre del contador que usaría para esto es "Tiempo de procesador %". Para ello, puede crear una regla de alerta para la consulta siguiente:

    Perf | where CounterName == "% Processor Time" and InstanceName == "_Total" | where CounterValue >= 90 or CounterValue <= 5.
    

¿Cómo puedo supervisar el rendimiento de Reliable Services y Reliable Actors?

Para supervisar el rendimiento de Reliable Services o Reliable Actors en sus aplicaciones, debe recopilar también los contadores Actor, Actor Method, Service y Service Method de Service Fabric. A continuación se incluyen ejemplos de contadores de rendimiento de Reliable Services y Reliable Actors que se pueden recopilar.

Nota:

Actualmente, el agente de Log Analytics no puede recopilar los contadores de rendimiento de Service Fabric, pero se pueden recopilar mediante otras soluciones de diagnóstico.

  • Service Fabric Service(*)\\Average milliseconds per request
  • Service Fabric Service Method(*)\\Invocations/Sec
  • Service Fabric Actor(*)\\Average milliseconds per request
  • Service Fabric Actor Method(*)\\Invocations/Sec

Consulte estos vínculos para obtener la lista completa de contadores de rendimiento de Reliable Services y Reliable Actors.

Pasos siguientes