Cómo utilizar Stackdriver Monitoring en las canalizaciones de Cloud Dataflow

Stackdriver proporciona servicios potentes de supervisión, registro y diagnóstico. La integración de Cloud Dataflow con Stackdriver Monitoring te permite acceder a las métricas de trabajo de Cloud Dataflow, como Estado del trabajo, Cantidad de elementos, Retraso del sistema (para trabajos de transmisión) y Contadores de usuarios, desde los paneles de Stackdriver. También puedes utilizar las capacidades de alerta de Stackdriver para recibir notificaciones sobre una variedad de condiciones, como un gran retraso en el sistema de transmisión o trabajos con errores.

Antes de comenzar

Sigue una de las guías de inicio rápido para configurar tu proyecto de Cloud Dataflow, y construir y ejecutar tu canalización.

Explora las métricas

Puedes explorar las métricas de Cloud Dataflow a través de Stackdriver. Sigue los pasos de esta sección y observa las métricas estándar proporcionadas para cada una de tus canalizaciones de Apache Beam.

Nota: Cloud Dataflow informará a Stackdriver sobre cualquier agregador definido en una canalización de Apache Beam como una métrica personalizada. Cloud Dataflow le informará las actualizaciones incrementales a Stackdriver aproximadamente cada 30 segundos. Todas las métricas del usuario se exportarán como un tipo de dato “doble” para evitar conflictos.

  1. Ve a Google Cloud Platform Console y selecciona el menú de Stackdriver Monitoring. Stackdriver Monitoring

  2. Sigue los pasos en Google Cloud Platform Console para crear una cuenta de Stackdriver y comenzar una prueba gratuita de Stackdriver.

  3. Ve al panel de Cloud Dataflow en Stackdriver y navega a Resources (Recursos) > Metrics Explorer (Beta) (Explorador de métricas Beta). Explorador de métricas

  4. En Metrics Explorer (Explorador de métricas), selecciona el tipo de recurso dataflow_job. dataflow_job

  5. En la lista que aparece, selecciona una métrica que quieras observar para uno de tus trabajos.


    Elegir métricas
    Por ejemplo: En este ejemplo, se muestra una canalización de transmisión que lee desde un tema de Cloud Pub/Sub y escribe en BigQuery. Consta de 5 pasos, uno de los cuales es PubsubIO.Read. La siguiente imagen muestra el dataflow/job/element_count para el paso PubsubIO.Read de la canalización. Ejemplo

Crea alertas y paneles

Además de brindarte acceso a las métricas relacionadas con Cloud Dataflow, Stackdriver te permite crear alertas y paneles para realizar gráficos de las series temporales de métricas, y elegir si recibir notificaciones cuando estas métricas alcanzan valores específicos.

Crea grupos de recursos

Puedes crear grupos de recursos que incluyan varias canalizaciones de Apache Beam para configurar alertas y crear paneles de forma fácil.

  1. En el panel de Cloud Dataflow en Stackdriver, ve al menú Groups (Grupos) y selecciona Create Group (Crear grupo).

  2. Agrega los criterios de filtro que definan los recursos de Cloud Dataflow incluidos en el grupo. Por ejemplo, un criterio de filtro puede ser el prefijo del nombre de tus canalizaciones. Crear grupo

  3. Una vez que se cree el grupo, podrás ver las métricas básicas relacionadas con los recursos de ese grupo. Crear grupo

Crea alertas para las métricas de Cloud Dataflow

Stackdriver te brinda la capacidad de crear alertas y recibir notificaciones cuando cierta métrica cruza un determinado umbral. Por ejemplo, cuando System Lag (Retraso del sistema) de una canalización de transmisión aumenta por sobre un valor definido de forma previa.

  1. En el panel de Cloud Dataflow en Stackdriver, ve al menú Alerting (Alertas) y selecciona Policies Overview (Descripción general de las políticas).

  2. Haz clic en Add Policy (Agregar política). Agregar política

  3. En la página Crear nueva política de alertas, puedes definir las condiciones de alerta y los canales de comunicación de las alertas.
    Por ejemplo, para configurar una alerta en el System Lag (Retraso del sistema) en el grupo de canalización WindowedWordCount de Apache Beam, selecciona “Dataflow Job” (Trabajo de Dataflow) en el menú desplegable Resource Type (Tipo de recurso), “Group” (Grupo) en el menú desplegable Applies To (Se aplica a) y “System Lag” (Retraso del sistema) en el menú desplegable If Metric (Si la métrica). Crear alerta

  4. Después de crear una alerta, puedes revisar los eventos relacionados con Cloud Dataflow si navegas a Alerting > Events (Alertas > Eventos). Cada vez que se activa una alerta por la condición Metric Threshold (Umbral de métrica), se crea un incidente y su correspondiente evento en Stackdriver. Si especificaste un mecanismo de notificación en la alerta (correo electrónico, SMS, etc.), también recibirás una notificación. Alerta de incidentes

Compila tu propio panel personalizado de supervisión

Puedes compilar paneles de Stackdriver Monitoring con los gráficos de Cloud Dataflow más relevantes.

  1. En el panel de Cloud Dataflow en Stackdriver, ve al menú Dashboards (Paneles) y selecciona Create Dashboard (Crear panel).

  2. Haz clic en Add Chart (Agregar gráfico).

  3. En la ventana Add Chart (Agregar gráfico), selecciona “Dataflow Job” (Trabajo de Dataflow) como el Resource Type (Tipo de recurso), selecciona la métrica para la que quieres crear el gráfico en el campo Metric Type (Tipo de métrica) y selecciona un grupo que contenga las canalizaciones de Apache Beam en el panel Filter (Filtro). Agregar gráfico

Puedes agregar tantos gráficos al panel como quieras.

Recibe métricas de la VM de trabajador desde el agente de Stackdriver Monitoring

Si quieres supervisar el disco persistente, la CPU, la red, y procesar métricas desde tus instancias de VM de trabajador de Cloud Dataflow, puedes habilitar el agente de Stackdriver Monitoring cuando ejecutes tu canalización. Consulta la lista de métricas del agente de Monitoring disponibles.

Para habilitar el agente de Monitoring, utiliza la opción --experiments=enable_stackdriver_agent_metrics cuando ejecutes tu canalización.

Para inhabilitar el agente de Monitoring sin detener tu canalización, actualiza tu canalización a través del lanzamiento del trabajo de reemplazo y sin especificar el parámetro --experiments=enable_stackdriver_agent_metrics.

¿Qué sigue?

Para obtener más información, considera explorar estos recursos:

¿Te ha resultado útil esta página? Enviar comentarios:

Enviar comentarios sobre...

Si necesitas ayuda, visita nuestra página de asistencia.