Cómo usar Cloud Scheduler y Pub/Sub para activar una función de Cloud Function

En este instructivo, se muestra cómo usar Cloud Scheduler y Cloud Pub/Sub para activar una Cloud Function. Poder programar la ejecución de una Cloud Function es un caso práctico común para Cloud Scheduler. El instructivo incluye las siguientes actividades:

  • Crear una Cloud Function simple que se suscriba a un tema de Cloud Pub/Sub
  • Crear un tema de Cloud Pub/Sub para activar esa función
  • Crear un trabajo de Cloud Scheduler que invoque el activador de Cloud Pub/Sub
  • Ejecutar el trabajo de Cloud Scheduler
  • Verificar el éxito

Antes de comenzar

Para este instructivo, suponemos que ya completaste la Guía de inicio rápido de Cloud Scheduler. Como resultado, tienes a disposición las siguientes herramientas y recursos:

  • Un proyecto de GCP con facturación habilitada

  • Una aplicación de App Engine en una de las ubicaciones admitidas

  • Las API de Cloud Scheduler y Cloud Pub/Sub habilitadas en el proyecto (la API de Cloud Functions se habilita durante el instructivo)

Costos

En este instructivo, se usan componentes facturables de Cloud Platform, entre los que se incluyen estos:

  • Google Cloud Functions
  • Google Cloud Pub/Sub
  • Google Cloud Scheduler

Usa la calculadora de precios para generar una estimación de los costos según el uso previsto.

Los usuarios nuevos de Cloud Platform pueden ser aptos para una prueba gratuita.

Crea una Cloud Function:

  1. Visita la página de Cloud Functions en la consola.

    Ir a la página de Cloud Functions

  2. Haz clic en el botón Habilitar API.

  3. Haz clic en el botón Create function (Crear función).

    imagen

  4. Asigna un nombre a tu función. Acepta la asignación de memoria predeterminada.

  5. Selecciona Cloud Pub/Sub en el menú desplegable Trigger (Activador).

  6. Selecciona un tema existente del menú desplegable, o usa la ventana emergente Crear tema nuevo para crear uno nuevo. Ahora tu función está suscrita al tema. Anota el nombre del tema. Lo necesitarás más adelante.

  7. Acepta los valores predeterminados de todo lo demás, incluido el index.js de muestra y el código package.json.

  8. Haz clic en Crear.

Crea un trabajo de Cloud Scheduler

  1. Visita la página de Cloud Scheduler en la consola.

    Ir a la página de Cloud Scheduler

  2. Haz clic en el botón Crear trabajo.

  3. Asigna un nombre a tu trabajo y, de forma opcional, agrega una descripción.

  4. Especifica la frecuencia de tu trabajo usando el formato unix-cron.

    * * * * *
    

    Consulta Cómo configurar programas de trabajos cron para obtener más información.

  5. Selecciona tu zona horaria.

  6. Selecciona Pub/Sub del menú desplegable Destino.

  7. Ingresa el nombre del Tema que seleccionaste anteriormente.

  8. Agrega una string breve de Carga útil para que se envíe a tu destino.

  9. Haz clic en Crear.

Ahora tienes un trabajo cron que envía un mensaje a tu tema de Cloud Pub/Sub cada minuto. Tu Cloud Function está suscrita a ese tema.

Es hora de ejecutar el trabajo que acabas de crear.

Ejecuta tu trabajo

  1. Abre la página de la consola de Cloud Scheduler.

    Ir a la página de Cloud Scheduler

  2. Haz clic en el botón Run now (Ejecutar ahora).

    El primer trabajo creado en un proyecto puede tardar unos minutos en ejecutarse cuando se invoca por primera vez debido a la configuración necesaria. Por lo tanto, es posible que debas esperar unos minutos.

  3. Observa la columna Result (Resultado).

    imagen

Felicitaciones. Acabas de usar la consola para ver los resultados de la ejecución de un trabajo cron que envía un mensaje a Cloud Pub/Sub. A continuación, aprenderás cómo verificar que tu Cloud Function se haya ejecutado realmente.

Verifica los resultados en Cloud Functions:

Para verificar que tu trabajo cron haya activado correctamente tu Cloud Function, sigue estos pasos:

  1. Visita la página de Cloud Functions en la consola.

    Ir a la página de Cloud Functions

  2. Haz clic en el nombre de la función.

    imagen

  3. Se abrirá la página Function details (Detalles de la función). Comprueba las invocaciones.

    imagen

    Felicitaciones. Se ejecutó tu función.

  4. Haz clic en View Logs (Ver registros).

    imagen

  5. Consulta los detalles de la invocación.

    imagen

Limpieza

Para evitar que se generen cargos en tu cuenta de GCP por los recursos que usaste en este instructivo, haz lo siguiente:

Borra el trabajo de Cloud Scheduler

  1. Ve a la página de Cloud Scheduler en GCP Console.

    Ir a la página de Scheduler

  2. Haz clic en la casilla de verificación que se encuentra junto a tu trabajo.

  3. Haz clic en el botón Borrar en la parte superior de la página y confirma la eliminación.

Borra el tema de Pub/Sub

  1. Ve a la página de Cloud Pub/Sub en GCP Console.

    Ir a la página de Pub/Sub

  2. Haz clic en la casilla de verificación que se encuentra junto a tu tema.

  3. Haz clic en Borrar en la parte superior de la página y confirma la eliminación.

Borra la función de Cloud Functions

  1. Ve a la página de Cloud Functions en GCP Console.

    Ir a la página de Cloud Functions

  2. Haz clic en la casilla de verificación que se encuentra junto a tu función.

  3. Haz clic en el botón Borrar en la parte superior de la página y confirma la eliminación.

Borra el proyecto

Si creaste un proyecto solo para este instructivo.

  1. In the GCP Console, go to the Projects page.

    Go to the Projects page

  2. In the project list, select the project you want to delete and click Delete .
  3. In the dialog, type the project ID, and then click Shut down to delete the project.

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

Enviar comentarios sobre...