Share via


Supervisar operaciones para el acelerador de zonas de aterrizaje de Azure Spring Apps

En este artículo se proporcionan consideraciones y recomendaciones de observabilidad para una aplicación de Spring Boot implementada en Azure Spring Apps.

La organización puede proporcionar una supervisión centralizada compartida por todas las cargas de trabajo o proporcionar áreas de trabajo dedicadas de Log Analytics de Azure Monitor por carga de trabajo. Si depende de recursos centralizados, asegúrese de que los miembros del equipo de la aplicación tengan acceso a los registros con sus roles de control de acceso basado en roles (RBAC) de Azure.

Para obtener información sobre el diseño de la plataforma, consulte Administración y supervisión de cargas de trabajo.

Puede aprovisionar sus propios recursos de supervisión. Este enfoque proporciona al equipo de aplicaciones más autonomía y simplifica la administración general de la aplicación. Por otro lado, también puede conllevar una mayor sobrecarga de administración. El acelerador de zonas de aterrizaje de Azure Spring Apps y las instrucciones siguientes se basan en este enfoque.

Consideraciones de diseño

  • Registros y métricas. Recopile registros y métricas que emitir desde la aplicación y los recursos. Los registros proporcionan información sobre las operaciones de la carga de trabajo. Las métricas se recopilan a intervalos regulares y ofrecen información casi en tiempo real. Los registros y las métricas pueden ayudar con investigaciones que están relacionadas con el estado y el uso de recursos.

    Las métricas son clave para tomar decisiones de escalado. Puede permitir que las aplicaciones se escalen en función de los umbrales de métricas o las aplicaciones que pueden escalar durante un período de tiempo específico.

    Debe considerar la posibilidad de almacenar estos datos para su análisis futuro. Disponga de opciones de visualización de datos para detectar tendencias rápidamente.

  • Instrumentación. Implemente una instrumentación para generar datos de observabilidad adicionales de la aplicación. Para recopilar información de instrumentación, use una herramienta de Administración de rendimiento de aplicaciones (APM), como el agente de Java Azure Application Insights. Combinar diagnósticos de plataforma con esta información le proporcionará funcionalidades de supervisión mejoradas.

  • Seguimiento distribuido. Implemente el seguimiento distribuido para obtener observabilidad en diferentes servicios dentro del ecosistema de Azure Spring Apps.

  • Alertas. Los equipos de aplicaciones deben recibir notificaciones sobre los eventos que son importantes para la carga de trabajo. Puede establecer alertas que supervisen los recursos en función de métricas como el almacenamiento, la tasa de solicitudes y el uso de datos.

  • Sondeos de estado. Puede configurar sondeos de estado para detectar el estado de los servicios de back-end. Revise cómo se configuran los sondeos de estado para que las solicitudes se enruten a instancias correctas y asegúrese de que la aplicación finalice correctamente si los servicios back-end no están disponibles.

Recomendaciones de diseño

  • Use métricas de Azure Monitor para recopilar métricas emitidas de recursos supervisados en una base de datos de serie temporal.

    Para Azure Spring Apps, vea los gráficos de cada página de información general de la aplicación y la página de métricas comunes.

  • Use la página de configuración de diagnóstico en Azure Spring Apps para establecer la combinación deseada de configuración de diagnóstico para las aplicaciones.

    Nota

    Los registros aparecen en la cuenta de almacenamiento, el centro de eventos o Log Analytics con un retraso. Si las instancias de la aplicación Spring se eliminan o mueven durante ese tiempo, se deberá eliminar la configuración de diagnóstico para asegurarse de que otra aplicación con el mismo identificador de recurso no reutilice la misma configuración de diagnóstico.

  • Use Application Insights como una herramienta de supervisión del rendimiento de aplicaciones (APM) uniforme en todos los componentes de la aplicación que le facilite recopilar registros de aplicaciones, métricas y seguimientos. Puede recopilar datos de todas las dependencias y seguimientos, y permite visualizar transacciones de un extremo a otro.

    Azure Spring Apps permite recopilar métricas de Spring Cloud Resilience4J en Application Insights. Habilite el agente de In-Process de Java y configure la recopilación de dimensiones para habilitar esta característica.

    Azure Spring Apps integra Spring Cloud Sleuth y Zipkin con Application Insights.

  • Elija mecanismos de detección de servicios que le permitan detectar y registrar rápidamente instancias de aplicación. Las opciones varían en función del nivel de Azure Spring Apps.

  • Use sondeos de preparación y ejecución para que las instancias de aplicación incorrectas se quiten de las características de detección de servicios.

  • Si la aplicación tiene un tiempo de inicio más largo, ajuste el tiempo de espera total, initialDelaySeconds + periodSeconds * failureThreshold, a un valor mayor que la hora de inicio de la aplicación. Este ajuste ayuda a evitar que se produzcan errores en el sondeo y que se fuerce el reinicio de la aplicación.

  • Configure los sondeos de estado para que realicen acciones en función del comando específico de la aplicación, una conexión de socket TCP o una solicitud HTTP.

  • En el caso de las aplicaciones de Spring Boot, aproveche el indicador de estado del accionador de Spring Boot para configurar los sondeos de estado.

Pasos siguientes

Acelerador de zona de aterrizaje de Azure Spring Apps