Métricas y dimensiones en Managed Service para Apache Flink - Managed Service para Apache Flink

Amazon Managed Service para Apache Flink Amazon (Amazon MSF) se denominaba anteriormente Amazon Kinesis Data Analytics para Apache Flink.

Métricas y dimensiones en Managed Service para Apache Flink

Cuando su Managed Service para Apache Flink procesa un origen de datos, Managed Service para Apache Flink informa de las siguientes métricas y dimensiones a Amazon CloudWatch.

Métricas de aplicación

Métrica Unidad Descripción Nivel Notas de uso
backPressuredTimeMsPerSecond* Milisegundos El tiempo (en milisegundos) que esta tarea u operador tiene retraso por segundo. Tarea, Operador, Paralelismo

* Disponible para Managed Service para Apache Flink que ejecutan únicamente la versión 1.13 de Flink.

Estas métricas pueden resultar útiles para identificar los cuellos de botella en una aplicación.

busyTimeMsPerSecond* Milisegundos El tiempo (en milisegundos) que esta tarea u operador está ocupado (ni inactivo ni con retraso) por segundo. Se puede ser NaN si no se pudo calcular el valor. Tarea, Operador, Paralelismo

* Disponible para Managed Service para Apache Flink que ejecutan únicamente la versión 1.13 de Flink.

Estas métricas pueden resultar útiles para identificar los cuellos de botella en una aplicación.

cpuUtilization Porcentaje El porcentaje total de utilización de CPU en los administradores de tareas. Por ejemplo, si hay cinco administradores de tareas, Managed Service para Apache Flink publica cinco muestras de esta métrica por intervalo de informes. Aplicación Se puede usar esta métrica para monitorear el uso mínimo, promedio y máximo de la CPU en su aplicación. La métrica CPUUtilization solo tiene en cuenta el uso de la CPU del proceso JVM de TaskManager que se ejecuta dentro del contenedor.
containerCPUUtilization Porcentaje Porcentaje total de uso de la CPU en los contenedores del administrador de tareas del clúster de aplicaciones Flink. Por ejemplo, si hay cinco administradores de tareas, también hay cinco contenedores de TaskManager y Managed Service para Apache Flink publica de 2 * cinco muestras de esta métrica por cada intervalo de informe de 1 minuto. Aplicación

Se calcula por contenedor de la siguiente manera:

Tiempo total de CPU (en segundos) consumido por el contenedor * 100 / Límite de CPU del contenedor (en CPU/segundos)

La métrica CPUUtilization solo tiene en cuenta el uso de la CPU del proceso JVM de TaskManager que se ejecuta dentro del contenedor. Hay otros componentes que se ejecutan fuera de la JVM dentro del mismo contenedor. La métrica containerCPUUtilization ofrece un panorama más completo, que incluye todos los procesos en términos de agotamiento de la CPU en el contenedor y de los fallos resultantes.

containerMemoryUtilization Porcentaje Porcentaje general de uso de memoria en los contenedores del administrador de tareas del clúster de aplicaciones Flink. Por ejemplo, si hay cinco administradores de tareas, también hay cinco contenedores de TaskManager y Managed Service para Apache Flink publica de 2 * cinco muestras de esta métrica por cada intervalo de informe de 1 minuto. Aplicación

Se calcula por contenedor de la siguiente manera:

Uso de memoria del contenedor (bytes) * 100 / Límite de memoria del contenedor según las especificaciones de implementación del pod (en bytes)

Las métricas HeapMemoryUtilization y ManagedMemoryUtilzations solo tienen en cuenta métricas de memoria específicas, como el uso de memoria apilada de la JVM de TaskManager o la memoria administrada (uso de memoria fuera de la JVM para procesos nativos, como el backend de estado de RockSDB). La métrica containerMemoryUtilization ofrece una imagen más completa al incluir la memoria del conjunto de trabajo, lo que permite medir mejor el agotamiento total de la memoria. Cuando se agote, resultará en Out of Memory Error para el pod de TaskManager.

containerDiskUtilization Porcentaje Porcentaje total de uso del disco en los contenedores del administrador de tareas del clúster de aplicaciones Flink. Por ejemplo, si hay cinco administradores de tareas, también hay cinco contenedores de TaskManager y Managed Service para Apache Flink publica de 2 * cinco muestras de esta métrica por cada intervalo de informe de 1 minuto. Aplicación

Se calcula por contenedor de la siguiente manera:

Uso del disco en bytes * 100 / Límite del disco por contenedor en bytes

En el caso de los contenedores, representa la utilización del sistema de archivos en el que está configurado el volumen raíz del contenedor.

currentInputWatermark Milisegundos La última marca de agua que ha recibido esta aplicación/operador/tarea/subproceso Aplicación, Operador, Tarea, Paralelismo Este registro solo se emite para dimensiones con dos entradas. Es el valor mínimo de las últimas marcas de agua recibidas.
currentOutputWatermark Milisegundos La última marca de agua que ha enviado esta aplicación/operador/tarea/subproceso Aplicación, Operador, Tarea, Paralelismo
downtime Milisegundos En el caso de los trabajos que actualmente se encuentran en situación de fallo o recuperación, el tiempo transcurrido durante la interrupción. Aplicación Esta métrica mide el tiempo transcurrido mientras un trabajo está fallando o se está recuperando. Esta métrica devuelve 0 para los trabajos en ejecución y -1 para los trabajos completados. Si esta métrica no es 0 o -1, indica que no se pudo ejecutar el trabajo de Apache Flink para la aplicación.
fullRestarts Recuento La cantidad total de veces que este trabajo se ha reiniciado por completo desde que fue enviado. Esta métrica no mide los reinicios detallados. Aplicación Se puede usar esta métrica para evaluar el estado general de la aplicación. Managed Service para Apache Flink puede reiniciar los valores controlados. Más reinicios de lo normal pueden indicar un problema con la aplicación.
heapMemoryUtilization Porcentaje Utilización general de la memoria dinámica en los administradores de tareas. Por ejemplo, si hay cinco administradores de tareas, Managed Service para Apache Flink publica cinco muestras de esta métrica por intervalo de informes. Aplicación Se puede usar esta métrica para monitorear el uso mínimo, promedio y máximo de la memoria dinámica en su aplicación. El HeapMemoryUtilization solo tiene en cuenta métricas de memoria específicas, como el uso de memoria dinámica de la JVM de TaskManager.
idleTimeMsPerSecond* Milisegundos El tiempo (en milisegundos) por segundo que esta tarea u operador está inactivo (sin datos que procesar). El tiempo de inactividad no incluye el tiempo de retraso, por lo que si la tarea está retrasada, no está inactiva. Tarea, Operador, Paralelismo

* Disponible para Managed Service para Apache Flink que ejecutan únicamente la versión 1.13 de Flink.

Estas métricas pueden resultar útiles para identificar los cuellos de botella en una aplicación.

lastCheckpointSize Bytes El tamaño total del último punto de control Aplicación Se puede usar esta métrica para determinar la utilización del almacenamiento de las aplicaciones en ejecución.

Si el valor de esta métrica aumenta, esto puede indicar que hay un problema con la aplicación, como una pérdida de memoria o un cuello de botella.

lastCheckpointDuration Milisegundos El tiempo que se tardó en completar el último punto de control Aplicación Esta métrica mide el tiempo que se tardó en completar el punto de control más reciente. Si el valor de esta métrica aumenta, esto puede indicar que hay un problema con la aplicación, como una pérdida de memoria o un cuello de botella. En algunos casos, puede solucionar este problema deshabilitando los puntos de control.
managedMemoryUsed* Bytes La cantidad de memoria gestionada en uso actualmente. Aplicación, Operador, Tarea, Paralelismo

* Disponible para Managed Service para Apache Flink que ejecutan únicamente la versión 1.13 de Flink.

Esto se refiere a la memoria gestionada por Flink fuera de la pila de Java. Se usa para el backend de estado de RockSDB y también está disponible para las aplicaciones.

managedMemoryTotal* Bytes La cantidad total de memoria gestionada. Aplicación, Operador, Tarea, Paralelismo

* Disponible para Managed Service para Apache Flink que ejecutan únicamente la versión 1.13 de Flink.

Esto se refiere a la memoria gestionada por Flink fuera de la pila de Java. Se usa para el backend de estado de RockSDB y también está disponible para las aplicaciones. La métrica ManagedMemoryUtilzations solo tiene en cuenta métricas de memoria específicas, como la memoria administrada (uso de memoria fuera de la JVM para procesos nativos como el backend de estado de RockSDB)

managedMemoryUtilization* Porcentaje Derivado por ManagedMemoryUsed/ManagedMemoryTotal Aplicación, Operador, Tarea, Paralelismo

* Disponible para Managed Service para Apache Flink que ejecutan únicamente la versión 1.13 de Flink.

Esto se refiere a la memoria gestionada por Flink fuera de la pila de Java. Se usa para el backend de estado de RockSDB y también está disponible para las aplicaciones.

numberOfFailedCheckpoints Recuento La cantidad de veces que los puntos de control arrojaron error. Aplicación Se puede utilizar esta métrica para supervisar el estado y el progreso de las aplicaciones. Los puntos de control pueden fallar debido a problemas con las aplicaciones, como problemas de rendimiento o permisos.
numRecordsIn* Recuento La cantidad total de registros que ha recibido esta aplicación, operador o tarea. Aplicación, Operador, Tarea, Paralelismo

* Para aplicar la estadística SUM durante un período de tiempo (segundos/minuto):

  • Seleccione la métrica en el nivel correcto. Si está rastreando la métrica de un operador, debe seleccionar las métricas del operador correspondientes.

  • Como Managed Service para Apache Flink toma 4 instantáneas de métricas por minuto, se debe utilizar la siguiente métrica matemática: m1/4, donde m1 es la estadística SUM durante un período (segundo/minuto)

El nivel de la métrica especifica si esta métrica mide la cantidad total de registros que ha recibido toda la aplicación, un operador específico o una tarea específica.

numRecordsInPerSecond* Recuento/segundo La cantidad total de registros por segundo que esta aplicación, operador o tarea ha recibido. Aplicación, Operador, Tarea, Paralelismo

* Para aplicar la estadística SUM durante un período de tiempo (segundos/minuto):

  • Seleccione la métrica en el nivel correcto. Si está rastreando la métrica de un operador, debe seleccionar las métricas del operador correspondientes.

  • Como Managed Service para Apache Flink toma 4 instantáneas de métricas por minuto, se debe utilizar la siguiente métrica matemática: m1/4, donde m1 es la estadística SUM durante un período (segundo/minuto)

El nivel de la métrica especifica si esta métrica mide la cantidad total de registros que ha recibido toda la aplicación, un operador específico o una tarea específica por segundo.

numRecordsOut* Recuento La cantidad total de registros que esta aplicación, operador o tarea ha recibido. Aplicación, Operador, Tarea, Paralelismo

* Para aplicar la estadística SUM durante un período de tiempo (segundos/minuto):

  • Seleccione la métrica en el nivel correcto. Si está rastreando la métrica de un operador, debe seleccionar las métricas del operador correspondientes.

  • Como Managed Service para Apache Flink toma 4 instantáneas de métricas por minuto, se debe utilizar la siguiente métrica matemática: m1/4, donde m1 es la estadística SUM durante un período (segundo/minuto)

El nivel de la métrica especifica si esta métrica mide la cantidad total de registros que toda la aplicación, un operador específico o una tarea específica ha emitido.

numLateRecordsDropped* Recuento Aplicación, Operador, Tarea, Paralelismo

* Para aplicar la estadística SUM durante un período de tiempo (segundos/minuto):

  • Seleccione la métrica en el nivel correcto. Si está rastreando la métrica de un operador, debe seleccionar las métricas del operador correspondientes.

  • Como Managed Service para Apache Flink toma 4 instantáneas de métricas por minuto, se debe utilizar la siguiente métrica matemática: m1/4, donde m1 es la estadística SUM durante un período (segundo/minuto)

La cantidad de registros que este operador o tarea ha perdido por llegar tarde.

numRecordsOutPerSecond* Recuento/segundo La cantidad total de registros por segundo que esta aplicación, operador o tarea ha emitido. Aplicación, Operador, Tarea, Paralelismo

* Para aplicar la estadística SUM durante un período de tiempo (segundos/minuto):

  • Seleccione la métrica en el nivel correcto. Si está rastreando la métrica de un operador, debe seleccionar las métricas del operador correspondientes.

  • Como Managed Service para Apache Flink toma 4 instantáneas de métricas por minuto, se debe utilizar la siguiente métrica matemática: m1/4, donde m1 es la estadística SUM durante un período (segundo/minuto)

El nivel de la métrica especifica si esta métrica mide la cantidad total de registros que ha emitido toda la aplicación, un operador específico o una tarea específica por segundo.

oldGenerationGCCount Recuento La cantidad total de operaciones antiguas de recopilación de elementos no utilizados que se han llevado a cabo en todos los administradores de tareas. Aplicación
oldGenerationGCTime Milisegundos El tiempo total dedicado a realizar antiguas operaciones de recopilación de elementos no utilizados. Aplicación Se puede usar esta métrica para monitorear la suma, el promedio y el tiempo máximo de recopilación de elementos no utilizados.
threadsCount Recuento La cantidad total de subprocesos activos utilizados por la aplicación. Aplicación Esta métrica mide la cantidad de subprocesos utilizados por el código de la aplicación. No es lo mismo que el paralelismo de la aplicación.
uptime Milisegundos El tiempo que el trabajo se ha estado ejecutando sin interrupción. Aplicación Se puede usar esta métrica para determinar si un trabajo se está ejecutando correctamente. Esta métrica devuelve -1 para los trabajos completados.
KPUs* Recuento La cantidad total de KPU utilizados por la aplicación. Aplicación

*Esta métrica recibe una muestra por período de facturación (una hora). Para visualizar la cantidad de KPU a lo largo del tiempo, use MAX o AVG durante un período de al menos una (1) hora.

El recuento de KPU incluye KPU de orchestration. Para obtener más información, consulte Precios de Managed Service para Apache Flink.

Métricas del conector de flujo de datos de Kinesis

AWS emite todos los registros de flujo de datos de Kinesis además de los siguientes:

Métrica Unidad Descripción Nivel Notas de uso
millisbehindLatest Milisegundos La cantidad de milisegundos que el consumidor está detrás de la cabecera de la transmisión, lo que indica el retraso del consumidor con respecto a la hora actual. Aplicación (para Stream), paralelismo (para ShardID)
  • Un valor de 0 indica que el procesamiento de registros está actualizado y que no hay nuevos registros para procesar en este momento. La métrica de una partición en particular se puede especificar mediante el nombre del flujo y el identificador de la partición.

  • Un valor de -1 indica que el servicio aún no ha registrado ningún valor para la métrica.

bytesRequestedPerFetch Bytes Los bytes solicitados a getRecords en una sola llamada. Aplicación (para Stream), paralelismo (para ShardID)

Métricas de Amazon MSK Connector

AWS emite todos los registros de Amazon MSK además de los siguientes:

Métrica Unidad Descripción Nivel Notas de uso
currentoffsets N/A El desfase de lectura actual del consumidor, para cada partición. La métrica de una partición en particular se puede especificar mediante el nombre del tema y el identificador de la partición. Aplicación (para el tema), paralelismo (para el ID de partición)
commitsFailed N/A La cantidad total de errores de confirmación de desplazamientos de Kafka, si están activados la confirmación de desplazamientos y los puntos de control. Aplicación, Operador, Tarea, Paralelismo Confirmar los desplazamientos a Kafka solo es una forma de exponer el progreso de los consumidores, por lo que un error al confirmar los desplazamientos no afecta a la integridad de los desplazamientos divididos con puntos de control de Flink.
commitsSucceeded N/A La cantidad total de desplazamientos confirmados satisfactoriamente con Kafka, si la confirmación de desplazamientos y los puntos de control están activados. Aplicación, Operador, Tarea, Paralelismo
committedoffsets N/A Los últimos desplazamientos confirmados correctamente para Kafka, para cada partición. La métrica de una partición en particular se puede especificar mediante el nombre del tema y el identificador de la partición. Aplicación (para el tema), paralelismo (para el ID de partición)
records_lag_max Recuento El retraso máximo en términos de la cantidad de registros para cualquier partición de esta ventana Aplicación, Operador, Tarea, Paralelismo
bytes_consumed_rate Bytes Cantidad media de bytes consumidos por segundo para un tema Aplicación, Operador, Tarea, Paralelismo

Métricas de Apache Zeppelin

En el caso de los cuadernos de Studio, AWS emite las siguientes métricas a nivel de la aplicación: KPUs, cpuUtilization, heapMemoryUtilization, oldGenerationGCTime, oldGenerationGCCount, y threadCount. Además, emite las métricas que se muestran en la siguiente tabla, también a nivel de la aplicación.

Métrica Unidad Descripción Nombre de Prometheus
zeppelinCpuUtilization Porcentaje Porcentaje total de utilización de la CPU en el servidor Apache Zeppelin. process_cpu_usage
zeppelinHeapMemoryUtilization Porcentaje Porcentaje general de utilización de la memoria dinámica en el servidor Apache Zeppelin. jvm_memory_used_bytes
zeppelinThreadCount Recuento La cantidad total de subprocesos activos utilizados por el servidor Apache Zeppelin. jvm_threads_live_threads
zeppelinWaitingJobs Recuento La cantidad de trabajos de Apache Zeppelin en cola esperando un subproceso. jetty_threads_jobs
zeppelinServerUptime Segundos El tiempo total que el servidor ha estado en funcionamiento. process_uptime_seconds