Realtime Compute for Apache Flink admite servicios de monitoreo y alertas mediante CloudMonitor (un servicio gratuito) o Application Real-Time Monitoring Service (ARMS). Configure alertas de métricas para trabajos, alertas de eventos para trabajos y alertas para flujos de trabajo con el fin de identificar y gestionar excepciones de manera oportuna. Este tema describe cómo configurar el monitoreo y las alertas mediante los diferentes servicios de monitoreo.
Limitaciones
No es posible configurar el monitoreo y las alertas para trabajos de Flink enviados a un clúster de sesiones durante el despliegue.
Actualmente, no se admite el monitoreo ni las alertas para trabajos por lotes.
ARMS no admite alertas de flujo de trabajo. No obstante, puede configurarlas mediante CloudMonitor (un servicio gratuito).
Guía de configuración
Según el tipo de servicio de monitoreo que utilice su espacio de trabajo (Check monitoring service type), elija el método de configuración adecuado:
-
Servicio de monitoreo gratuito (CloudMonitor)
Metric alert configuration: Configure alertas basadas en cambios en los valores de las métricas, como CPU, latencia y volumen de datos. Admite la configuración para uno o varios trabajos.
Event alert configuration (including workflows): Configure alertas basadas en la ocurrencia de eventos, como fallos en trabajos. Admite la configuración para eventos de trabajos y flujos de trabajo.
-
Servicio de monitoreo ARMS
Metric alert configuration: Configure alertas basadas en cambios en los valores de las métricas (admite seis métricas principales). Admite la configuración para uno o varios trabajos.
Event alert configuration: Solo se admiten eventos de fallo de trabajo. Actualmente no se admiten otras alertas de eventos. Puede configurarlas mediante CloudMonitor event alert configuration.
Cambiar tipos de servicio de monitoreo
Puede cambiar entre tipos de servicios de monitoreo para satisfacer diferentes necesidades empresariales.
En la Management Console, en la columna Actions del espacio de trabajo objetivo, haga clic en More para cambiar al otro tipo de servicio de monitoreo.
Lea atentamente las notas sobre el cambio de tipos de servicio. Solo podrá continuar con la configuración después de seleccionar la casilla de confirmación.
Configurar monitoreo y alertas mediante CloudMonitor
Configuración de alertas de métricas
Solo la cuenta de Alibaba Cloud que adquirió el espacio de trabajo, así como los usuarios de RAM y roles de RAM bajo dicha cuenta con permisos de namespace, pueden configurar alertas en CloudMonitor.
Inicie sesión en la Cloud Monitor console.
En el panel de navegación izquierdo, seleccione .
Haga clic en Create Alert Rule y configure los parámetros.
-
Parámetro
Descripción
Product
Realtime Compute for Apache Flink
Resource Scope
Seleccione Instance. La regla de alerta se aplica al espacio de trabajo especificado de Realtime Compute for Apache Flink.
Associated Resources
Haga clic en Add Instance, seleccione el espacio de trabajo en la región objetivo (How do I view information such as the workspace ID?) y luego haga clic en OK.
Rule Description
Haga clic en Add Rule > Simple Metric o Composite Metric para abrir el panel Set Rule Description.
El panel incluye varios niveles de alerta: Critical, Warn (notifica por SMS, correo electrónico y webhook) e Info (notifica por correo electrónico y webhook). Para cada nivel, puede establecer una condición de umbral. Por ejemplo, el valor promedio es >= un umbral especificado durante 3 periodos consecutivos, donde 1 periodo = 1 minuto.
En la sección Dimension, puede configurar el namespace (nombre del namespace de Flink) y el deploymentID (el deployment ID en la pestaña Configuration del trabajo de Flink) para especificar los trabajos que se van a monitorear.
Nota-
Si las listas desplegables de namespace y deploymentID están vacías, puede introducir los valores manualmente.
-
Si deja estos campos vacíos, se monitorean todos los trabajos en todos los namespaces.
NotaEn un entorno de producción, las alertas de métrica única pueden generar fácilmente falsos positivos o negativos. Las alertas de métricas compuestas reflejan con mayor precisión las excepciones del negocio. Para obtener más información, consulte Recommended configuration examples and templates for monitoring and alerting.
Para obtener más información sobre otros parámetros, consulte Create an alert rule.
-
Configuración de alertas de eventos (incluidos flujos de trabajo)
Solo la cuenta de Alibaba Cloud que adquirió el espacio de trabajo, así como los usuarios de RAM y roles de RAM bajo dicha cuenta con permisos de namespace, pueden configurar alertas o suscribirse a eventos en CloudMonitor.
Alertas de eventos de trabajo
Suscríbase a alertas de eventos del sistema para trabajos mediante la configuración de condiciones. Se admite la configuración por lotes de alertas de eventos.
Inicie sesión en la Cloud Monitor console.
En el panel de navegación izquierdo, seleccione .
En la pestaña Subscription Policy, haga clic en Create Subscription Policy.
-
En la página Create Subscription Policy, configure los parámetros. Para obtener más información sobre los parámetros, consulte Manage event subscriptions (recommended).
Subscription Type: System Event.
Product: Seleccione Realtime Compute for Apache Flink.
Event Name: Admite los eventos Job Run Failed (no compatible cuando se usa el servicio de monitoreo ARMS), Post-mortem Processing for ECS Downtime y Impact of Proactive O&M on ECS.
-
Event Content: Puede especificar trabajos o configurar alertas por lotes introduciendo la siguiente información de Flink en el contenido del evento.
Workspace ID: Configure alertas de eventos para todos los trabajos en todos los namespaces bajo el espacio de trabajo objetivo. Para consultar el ID del espacio de trabajo, véase How do I view information such as the workspace ID?.
Namespace Name: Configure alertas de eventos para todos los trabajos en el namespace objetivo.
Deployment Job Name: Configure alertas de eventos para trabajos específicos. Separe varios nombres de trabajo con una coma (
,). Si existen trabajos con el mismo nombre bajo su cuenta, utilice el DeploymentID en su lugar.DeploymentID: Configure alertas de eventos para trabajos específicos. Separe varios ID con una coma (
,). Puede encontrar el ID en la pestaña Configuration de la página del trabajo de Flink como deployment ID.
NotaSi no establece Application Group, Message o Event Resource, la suscripción se aplica a todos los espacios de trabajo dentro de su cuenta.
Alertas de eventos de flujo de trabajo
Suscríbase a alertas de eventos del sistema para flujos de trabajo de Flink mediante la configuración de condiciones. Se admite la configuración por lotes de alertas de eventos. Para obtener más información sobre los flujos de trabajo, consulte Manage workflows.
-
Obtenga el ID de recurso del nodo de flujo de trabajo.
Inicie sesión en la Cloud Monitor console.
En el panel de navegación izquierdo, seleccione .
En la pestaña Event Monitoring, establezca Product en Realtime Compute for Apache Flink y Event Name en Workflow Task Status Change, y luego haga clic en Search.
-
Busque el ID de recurso del nodo de flujo de trabajo a continuación.
En la página Event Monitoring, seleccione Realtime Compute for Apache Flink en la lista desplegable Product. En la lista de eventos, busque el registro con el nombre de evento flink:Workflow:TaskStateChange Workflow Task Status Change. Puede ver el ID de recurso del nodo de flujo de trabajo en la columna Resource.
El formato del recurso es
acs:flink:cn-hangzhou:<AlibabaCloudAccountId>:resourceId/workspaceId/<workspaceId-namespaceId>#workflowDefinitionName/<workflowDefinitionName>#taskDefinitionName/<taskDefinitionName>. También puede usar este formato para construir directamente el ID de recurso para su nodo de flujo de trabajo.Parámetro
Descripción
<AlibabaCloudAccountIdOfWorkspace>El ID de la cuenta de Alibaba Cloud propietaria del espacio de trabajo de Flink.
<workspaceId-namespaceId>Una combinación del
workspaceIdy elnamespaceId, unidos por un guion (-).workspaceId: El ID del espacio de trabajo. Para obtener más información, consulte Workspace management and operations.namespaceId: El nombre del namespace.<workflowDefinitionName>El nombre del flujo de trabajo.
<taskDefinitionName>El nombre del nodo de flujo de trabajo.
NotaPor lo general, hay un retraso de varios minutos antes de que los eventos de cambio de estado del flujo de trabajo aparezcan en CloudMonitor.
-
Suscríbase a notificaciones de eventos.
En el panel de navegación izquierdo, seleccione .
En la pestaña Subscription Policy, haga clic en Create Subscription Policy.
-
En la página Create Subscription Policy, establezca los parámetros para la directiva de suscripción. Para obtener más información sobre los parámetros, consulte Manage event subscriptions (recommended).
Subscription Type: System Event.
Product: Seleccione Realtime Compute for Apache Flink.
Event Name: Seleccione Workflow Task Status Change.
Event Content: Admite la introducción de parámetros como
toState: FAILED(flujo de trabajo fallido),toState: SUCCESS(flujo de trabajo exitoso) yfromState: SCHEDULED, toState: RUNNING(el estado del flujo de trabajo cambió de programado a en ejecución).Event Resource: Introduzca el ID de recurso del flujo de trabajo obtenido en el Paso 1. Separe varios ID con una coma (
,).Event Type, Event Level, Application Group: No configure ninguno de estos.
Configurar monitoreo y alertas mediante ARMS
Configuración de alertas de métricas
El monitoreo de múltiples métricas en ARMS solo se admite mediante PromQL personalizado. Para un método de configuración más sencillo, utilice CloudMonitor metric alert configuration.
Configurar un solo trabajo (Management Console)
Puede crear una nueva regla de alerta para un trabajo objetivo, o bien crear una plantilla de regla de alerta y utilizarla posteriormente para crear alertas para los trabajos deseados. Esto acelera la configuración del monitoreo y las alertas.
La Development Console solo muestra eventos de alerta de las últimas 48 horas. Para ver eventos de alerta anteriores, vaya a Alert Management en la consola de ARMS.
-
Vaya a la página de configuración de alertas.
Inicie sesión en la Management Console y haga clic en Console en la columna Actions del espacio de trabajo objetivo.
En la página , haga clic en el nombre del trabajo objetivo.
Haga clic en la pestaña Alarm.
-
En la pestaña Alert Rules, seleccione .
También puede seleccionar . Al agregar y utilizar una plantilla de alerta, puede crear reglas de alerta directamente o con modificaciones menores, lo cual acelera el proceso de configuración.
-
Introduzca la información de la regla de alerta.
Categoría
Parámetro
Descripción
Rule
Name
Debe comenzar con una letra y solo puede contener letras minúsculas, números y guiones bajos (_). La longitud está limitada a entre 3 y 64 caracteres.
Description
Una nota sobre la regla.
Content
Configure las condiciones que activan una alerta. El sistema compara el valor de la métrica especificada con el umbral en un intervalo determinado. Si el resultado cumple la condición, se activa automáticamente una alerta.
-
Metric:
-
Restart Count in 1 Minute: El número de veces que el Job Manager se ha reiniciado en 1 minuto.
-
Checkpoint Count in 5 Minutes: El número de puntos de control exitosos en 5 minutos.
-
Emit Delay: La latencia del negocio, que es la diferencia de tiempo entre el momento en que se generan los datos y el momento en que salen del operador Source. La unidad es segundos.
ImportanteEl tiempo de generación de datos depende de la marca de tiempo registrada en el sistema externo. Si el sistema externo no tiene una marca de tiempo, o si esta se escribió incorrectamente, el valor de Emit Delay será inexacto y no reflejará la latencia real. Configure alertas con múltiples métricas para determinar el evento real. Para obtener más información, consulte Recommended configuration examples and templates for monitoring and alerting.
-
IN RPS: El número de registros de entrada por segundo. La unidad es registros/segundo.
-
OUT RPS: El número de registros de salida por segundo. La unidad es registros/segundo.
-
Source Idle Time: El tiempo durante el cual el origen no ha procesado datos. La unidad es milisegundos.
-
Job Failed: El trabajo ha fallado.
-
-
Time Difference: La duración de la ventana de tiempo de datos históricos que el sistema consulta hacia atrás en cada comprobación. La unidad es minutos.
-
Comparator: Admite >= y <=.
-
Threshold: El valor con el que se compara la métrica.
-
Si selecciona el operador >=, el sistema utiliza el valor MAX del eje vertical. Si el valor máximo dentro de la diferencia de tiempo es >= el umbral, se activa la regla de alerta.
-
Si selecciona el operador <=, el sistema utiliza el valor MIN del eje vertical. Si el valor mínimo dentro de la diferencia de tiempo es <= el umbral, se activa la regla de alerta.
-
Por ejemplo, suponga que está monitoreando la métrica "Checkpoint Count in 5 Minutes". La diferencia de tiempo se establece en 10 minutos, el umbral es 2 y el operador es "<=".
Cada minuto, el sistema comprueba los datos históricos de los últimos 10 minutos. Si encuentra algún intervalo de 5 minutos donde el número de puntos de control exitosos fue menor o igual a 2, activa una alerta.
Trigger Time
El horario en el que el monitoreo de alertas está activo. Puede especificar que esté activo solo durante el día (de 9:00 a 18:00). De forma predeterminada, está activo todo el día.
Alarm Rate
Enviar una alerta solo una vez dentro de un número continuo de minutos. Admite de 1 minuto a 1440 minutos (24 horas).
Notification Method
Notification Method
Puede seleccionar varios métodos de notificación. Los métodos admitidos son:
-
DingTalk
-
Correo electrónico
-
SMS
-
Webhook
-
Teléfono
Asegúrese de que el número de teléfono del destinatario haya sido verificado. De lo contrario, este método no funcionará. Puede hacer clic en Notification object management a continuación. Si la columna Phone para el contacto objetivo en la pestaña de contactos muestra Unverified, haga clic para completar la verificación.
ImportanteAsegúrese de haber creado y agregado contactos de notificación disponibles. De lo contrario, la notificación de alerta fallará. Por ejemplo, si selecciona DingTalk como método de notificación, seleccione DingTalk y agregue un contacto de notificación de DingTalk del tipo chatbot de DingTalk.
Notification Object
Puede notificar a varios contactos al mismo tiempo. Puede seleccionar o buscar contactos. Antes de seleccionar un contacto, debe hacer clic en Notification object management a la derecha para crear uno. Para obtener más información, consulte Workspace management and operations.
Alarm Noise Reduction
Haga clic en Advanced Settings y luego active el interruptor Alarm Noise Reduction.
Después de activar la reducción de ruido de alarmas, no se enviarán alertas para escenarios donde el trabajo pueda recuperarse rápidamente, como failovers a corto plazo provocados por la programación del clúster o el ajuste automático. Las alertas se envían solo cuando las condiciones de umbral que estableció se cumplen de manera continua.
No Data Alarms
Haga clic en Advanced Settings y luego active el interruptor No Data Alarms e introduzca la información de tiempo continuo sin datos.
Después de activar esta función, el sistema monitorea escenarios donde no se reportan datos de monitoreo. Si no se reportan datos dentro del periodo seleccionado, se activa una alerta. Por lo general, no se reportan datos de monitoreo cuando el JobManager presenta anomalías, el trabajo se detiene inesperadamente o el enlace de reporte tiene problemas.
-
-
Haga clic en OK.
La regla de alerta guardada se habilita de forma predeterminada y aparece en la lista de reglas de alerta. Puede optar por detenerla, editarla o eliminarla.
Configurar uno o varios trabajos (consola de ARMS)
Si cambia el nombre de un trabajo en la consola de Flink, cualquier regla de alerta configurada en la consola de ARMS basada en el nombre original del trabajo quedará invalidada. Debe volver a seleccionar el trabajo renombrado y configurar la alerta para que surta efecto.
Inicie sesión en la Management Console.
-
En la columna Actions del espacio de trabajo objetivo, seleccione para ir a la consola de ARMS.
El nombre del espacio de trabajo, el ID del espacio de trabajo y el nombre de la instancia de Prometheus correspondiente se muestran en la parte superior.
El panel de navegación izquierdo incluye Dashboard List, Service Discovery, Metric Management, Alert Rules y Settings. El estado del agente se muestra en la esquina superior derecha. En la pestaña Metrics de la página Service Discovery, puede filtrar métricas por nombre de trabajo, tipo de métrica y otras condiciones. La lista de métricas muestra el nombre de la métrica, el nombre del trabajo, el tipo de métrica y otra información.
-
Haga clic en Alert Rules a la izquierda para crear una regla de alerta.
Check Type: Admite alertas de métricas mediante umbrales estáticos y PromQL personalizado (excluyendo las métricas de alerta ya admitidas por Flink).
Filter Conditions: Se admite la configuración de alertas por lotes. Para Namespace, introduzca el nombre del namespace. Seleccionar todos indica todos los namespaces en el espacio de trabajo. Para Create Deployment, introduzca el deployment ID del trabajo objetivo en el namespace (que se encuentra en la pestaña Configuration del trabajo de Flink). Seleccionar todos indica todos los trabajos en el namespace.
Para obtener más información sobre los parámetros de configuración, consulte Create a Prometheus alert rule. También puede crear una plantilla de regla de alerta de Prometheus. Para obtener más información, consulte Create a Prometheus alert rule template.
Configuración de alertas de eventos
Solo se admiten eventos de fallo de trabajo. Configure esto seleccionando la regla Job Failed en metric alert configuration. Actualmente no se admiten otras alertas de eventos. Puede configurarlas mediante CloudMonitor event alert configuration.
Preguntas frecuentes
Cómo comprobar el tipo de servicio de monitoreo de un espacio de trabajo
Cómo agregar un chatbot de DingTalk para alertas en la Development Console
Cómo crear un webhook en la Development Console
Documentos relacionados
Realtime Compute for Apache Flink permite elegir entre CloudMonitor (servicio gratuito) o ARMS Prometheus Monitoring para proporcionar funciones de monitoreo y alertas de jobs. Para una comparación detallada de funciones, costos y más, consulte Feature comparison between CloudMonitor and ARMS alert services.
ARMS admite la configuración de funciones como directivas de escalamiento y programación. Para más información, consulte Escalation policy y tutoriales prácticos relacionados.
CloudMonitor admite la recepción de notificaciones de alertas mediante grupos de DingTalk, grupos de Lark, entre otros. Para detalles de configuración, consulte Alert notification methods.
Para más información sobre las métricas de monitoreo compatibles, consulte Monitoring metrics.
Es posible deshabilitar el monitoreo y las alertas, o descartar métricas específicas (al usar ARMS) para reducir costos. La recolección de métricas puede reanudarse posteriormente si es necesario. Para operaciones específicas, consulte Discard or restore monitoring metrics.