En este lab, utilizará Cloud Debugger y Error Reporting para diagnosticar y corregir errores en la aplicación que se ejecuta.
Objetivos
En este lab, aprenderá a hacer lo siguiente:
Crear un Cloud Source Repository y enviar código de aplicación a él
Instalar y configurar Cloud Debugger
Utilizar instantáneas y puntos de registro de depuración para capturar y mostrar variables de la aplicación
Instalar y configurar Cloud Error Reporting
Utilizar Cloud Error Reporting para identificar errores en una aplicación
Configuración y requisitos
En cada lab, recibirá un proyecto de Google Cloud y un conjunto de recursos nuevos por tiempo limitado y sin costo adicional.
Accede a Qwiklabs desde una ventana de incógnito.
Ten en cuenta el tiempo de acceso del lab (por ejemplo, 1:15:00) y asegúrate de finalizarlo en el plazo asignado.
No existe una función de pausa. Si lo necesita, puede reiniciar el lab, pero deberá hacerlo desde el comienzo.
Cuando esté listo, haga clic en Comenzar lab.
Anote las credenciales del lab (el nombre de usuario y la contraseña). Las usarás para acceder a la consola de Google Cloud.
Haga clic en Abrir Google Console.
Haga clic en Usar otra cuenta, copie las credenciales para este lab y péguelas en el mensaje emergente que aparece.
Si usa otras credenciales, se generarán errores o incurrirá en cargos.
Acepta las condiciones y omite la página de recursos de recuperación.
Active Google Cloud Shell
Google Cloud Shell es una máquina virtual que cuenta con herramientas de desarrollo. Ofrece un directorio principal persistente de 5 GB y se ejecuta en Google Cloud.
Además, Google Cloud Shell proporciona acceso de línea de comandos a sus recursos de GCP.
En GCP Console, en la barra de herramientas superior derecha, haga clic en el botón Abrir Cloud Shell.
Haga clic en Continue (Continuar):
El aprovisionamiento y la conexión al entorno demoran solo unos minutos. Cuando esté conectado, ya estará autenticado y el proyecto estará configurado con su PROJECT_ID. Por ejemplo:
gcloud es la herramienta de línea de comandos para Google Cloud Platform. Viene preinstalada en Cloud Shell y es compatible con la función de autocompletado con tabulador.
Puede solicitar el nombre de la cuenta activa con este comando:
Puede solicitar el ID del proyecto con este comando:
gcloud config list project
Resultado:
[core]
project = <project_ID>
Resultado de ejemplo:
[core]
project = qwiklabs-gcp-44776a13dea667a6
Prepare la aplicación del caso de éxito
En esta sección, accederá a Cloud Shell, clonará el repositorio de Git que contiene la aplicación Quiz, configurará las variables de entorno y ejecutará la aplicación.
Clone el código fuente en Cloud Shell
A fin de clonar el repositorio para la clase, ejecute el siguiente comando:
Configure y ejecute la aplicación del caso de éxito
Cambie al directorio que contiene los archivos de muestra de este lab:
cd ~/stackdriver-debug-errorreporting/start
Para configurar la aplicación Quiz, ejecute el siguiente comando:
. prepare_incomplete_environment.sh
Cree un Cloud Source Repository
En esta sección, creará un Cloud Source Repository y enviará el código de aplicación Quiz del lab actual a él.
Cree un Cloud Source Repository
En el Menú de navegación de Cloud Platform Console, haga clic en Source Repositories.
Haga clic en Agregar repositorio en la esquina superior derecha.
Seleccione Crear repositorio nuevo y haga clic en Continuar.
Asigne el nombre default al repositorio y, luego, para Proyecto, seleccione el proyecto identificado con el ID de su proyecto de GCP en el menú desplegable.
Haga clic en Crear.
Se abre el diálogo Agrega código a tu repositorio.
Clone el repositorio
Regrese a la ventana de Cloud Shell.
Para cambiar el directorio de trabajo de vuelta a la carpeta principal, ejecute el siguiente comando:
cd ~
Para clonar el Cloud Source Repository predeterminado, ejecute el siguiente comando:
gcloud source repos clone default
Para copiar los archivos de la aplicación Quiz de la carpeta del lab al repositorio, ejecute el siguiente comando:
Ingrese el comando git commit para confirmar los cambios con el mensaje "Quiz application initial check-in".
git commit -m "Quiz application initial check-in"
Ingrese el comando git push para enviar los cambios al repositorio predeterminado.
git push
Regrese a la ventana de Source Repository y actualice la pestaña del navegador.
Use Cloud Debugger
En esta sección, escribirá el código para crear e iniciar Cloud Debugger en la aplicación Quiz. Luego, establecerá instantáneas y puntos de registro de depuración en Cloud Platform Console.
Escriba código para configurar Cloud Debugger
En Cloud Shell, ejecute el siguiente comando a fin de instalar el agente de Node.js para Cloud Debugger:
cd ~/default
npm install --save @google-cloud/debug-agent
Haga clic en Abrir editor.
Si un error indica que no se pudo cargar el editor de código debido a que las cookies de terceros están inhabilitadas, haga clic en Abrir en una ventana nueva y cambié a la nueva pestaña.
// TODO: Add the following statement to import and start
// Stackdriver debug-agent
// The start(...) method takes an 'options' object that you
// can use to configure the Cloud Debugger agent.
// You will need to pass through an object with an
// allowExpressions Boolean property set to true.
require('@google-cloud/debug-agent').start({ allowExpressions: true });
// END TODO
Guarde el archivo.
Actualice Cloud Source Repository y produzca un contexto fuente
Regrese a la ventana de Cloud Shell.
Si Cloud Shell no está visible, haga clic en Abrir terminal.
Para agregar los cambios, confirmarlos y enviarlos al Cloud Source Repository predeterminado, ejecute los siguientes comandos:
Para instalar las dependencias de la aplicación Quiz e iniciarla, ejecute el siguiente comando:
npm install
npm start
Cuando vea el mensaje App listening on port 8080, haga clic en Vista previa en la Web > Vista previa en el puerto 8080 para obtener una vista previa de la aplicación Quiz.
Regrese a Cloud Platform Console.
En el Menú de navegación, haga clic en Debugger.
Utilice el navegador del código fuente para seleccionar el archivo web-app/questions.js.
Busque el controlador POST donde se agregan las preguntas (router.post('/add..)) y haga clic en el número de línea a la izquierda del espacio en blanco inmediatamente después de let data = req.body. Haga clic en Crear instantánea.
Regrese a la aplicación Quiz y haga clic en Create Question.
Complete el formulario con los siguientes valores y haga clic en Guardar.
Campo del formulario
Valor
Author
Su nombre
Quiz
Google Cloud Platform
Título
¿Cuál de los siguientes es un producto de Google Cloud?
Respuesta 1
Debug
Respuesta 2
Error Reporting
Respuesta 3
Logging
Respuesta 4
Todas las opciones anteriores(seleccione la respuesta 4 como la correcta)
Regrese a la ventana de Cloud Debug en Cloud Platform Console.
Expanda la variable data.
Depure la aplicación web con un punto de registro
Sin salir de questions.js, haga clic en la pestaña Punto de registro del panel derecho en la ventana Depuración.
Haga clic en la misma línea de código fuente que usó para insertar la instantánea y, luego, en Crear punto de registro.
En el editor interactivo del punto de registro, escriba la siguiente instrucción de registro y haga clic en Agregar.
if (true) logpoint("Quiz = {data.quiz}")
Esta instrucción de registro imprime el valor del campo del formulario de quiz.
Regrese a la aplicación Quiz y haga clic en Create Question.
Complete el formulario con los siguientes valores y haga clic en Guardar.
Campo del formulario
Valor
Author
Su nombre
Quiz
Google Cloud Platform
Título
¿Qué producto de Google Cloud incluye instantáneas y puntos de registro?
Respuesta 1
Debugger(seleccione la respuesta 1 como la correcta)
Respuesta 2
Error Reporting
Respuesta 3
Logging
Respuesta 4
Todas las opciones anteriores
Regrese a la ventana de Cloud Shell.
Use Cloud Error Reporting
En esta sección, escribirá el código para integrar Cloud Error Reporting en la aplicación Quiz y observar los errores de la aplicación web y de Cloud Functions.
Escriba código para configurar Cloud Error Reporting
En Cloud Shell, presione Ctrl + C para detener la aplicación web.
A fin de instalar la biblioteca Node.js para Cloud Error Reporting, ejecute el siguiente comando:
cd ~/default
npm install --save @google-cloud/error-reporting
En el editor de código de Cloud Shell, navegue a default/app.js.
En el archivo app.js, cargue el módulo '@google-cloud/error-reporting.
Cree el cliente de Cloud Error Reporting.
default/app.js
// TODO: Load the error-reporting module
const {ErrorReporting} = require(
'@google-cloud/error-reporting');
// END TODO
const path = require('path');
const express = require('express');
const config = require('./config');
const app = express();
// TODO: Create the errorReporting client object
const errorReporting = new ErrorReporting();
// END TODO
// TODO: Use Stackdriver Error Reporting
// middleware for Express
app.use(errorReporting.express);
// END TODO
Guarde el archivo.
Actualice Cloud Source Repository y produzca un nuevo contexto fuente
Regrese a la ventana de Cloud Shell y ejecute los siguientes comandos para agregar, confirmar y enviar los cambios al Cloud Source Repository predeterminado.
Vea los errores de la aplicación web con Error Reporting
De forma predeterminada, Cloud Error Reporting se activa únicamente cuando la aplicación está en producción. Exporte una variable de entorno, NODE_ENV, con el valor establecido en production.
export NODE_ENV=production
Para iniciar la aplicación, ejecute el siguiente comando:
npm start
Obtenga una vista previa de la aplicación web.
Regrese a Cloud Platform Console.
En el menú de navegación, haga clic en Error Reporting.
Regrese a la aplicación Quiz y haga clic en Take Test.
Haga clic en Places.
Complete el cuestionario, ingrese una calificación y comentarios, y haga clic en Send Feedback.
Regrese a Cloud Platform Console.
En el menú de navegación, haga clic en Error Reporting.
Haga clic en Volver a cargar automáticamente.
Vea los errores de Cloud Function con Error Reporting
Regrese a Cloud Shell y presione Ctrl+C para detener la aplicación web.
Para crear el tema de Pub/Sub faltante, ejecute el siguiente comando:
gcloud pubsub topics create feedback
Para crear la Cloud Function que se suscribe al tema de comentarios e inserta un registro en Cloud Spanner, ejecute los siguientes comandos:
cd ~/stackdriver-debug-errorreporting/start/
gcloud functions deploy process-feedback --runtime nodejs14 \
--trigger-topic feedback --source ./function \
--stage-bucket $GCLOUD_BUCKET --entry-point subscribe
cd ~/default
Para iniciar la aplicación web, ejecute el siguiente comando:
npm start
Obtenga una vista previa de la aplicación web.
Regrese a la aplicación Quiz y haga clic en Take Test.
Haga clic en Places.
Complete el cuestionario, ingrese una calificación y comentarios, y haga clic en Send Feedback.
Regrese a Cloud Platform Console.
En el menú de navegación, haga clic en Error Reporting.
Haga clic en el vínculo Error: ERROR processing feedback:.
En la sección Muestras recientes de la ventana, haga clic en el vínculo Ver registros para el error de Cloud Functions.
Para crear la base de datos y la tabla de comentarios, regrese a Cloud Shell, detenga la aplicación web y ejecute el siguiente comando:
Adicional: Cómo encontrar un error lógico en la aplicación Quiz
En esta sección, encontrará un error en la aplicación Quiz y usará Cloud Debugger para identificar la causa.
Reproduzca el error de la aplicación Quiz
Inicie la aplicación web.
Navegue a la página principal de la aplicación Quiz y haga clic en Realizar prueba.
Haga clic en Places.
Responda la pregunta correctamente.
Haga clic en GCP y, luego, en Places de nuevo.
Responda la pregunta incorrectamente.
¿Qué puntuación ve?
Finalice su lab
Cuando haya completado el lab, haga clic en Finalizar lab. Google Cloud Skills Boost quitará los recursos que usó y limpiará la cuenta.
Tendrá la oportunidad de calificar su experiencia en el lab. Seleccione la cantidad de estrellas que corresponda, ingrese un comentario y haga clic en Enviar.
La cantidad de estrellas indica lo siguiente:
1 estrella = Muy insatisfecho
2 estrellas = Insatisfecho
3 estrellas = Neutral
4 estrellas = Satisfecho
5 estrellas = Muy satisfecho
Puede cerrar el cuadro de diálogo si no desea proporcionar comentarios.
Para enviar comentarios, sugerencias o correcciones, use la pestaña Asistencia.
Copyright 2020 Google LLC. All rights reserved. Google y el logotipo de Google son marcas de Google LLC. Los demás nombres de productos y empresas pueden ser marcas de las respectivas empresas a las que estén asociados.
Los labs crean un proyecto de Google Cloud y recursos por un tiempo determinado
.
Los labs tienen un límite de tiempo y no tienen la función de pausa. Si finalizas el lab, deberás reiniciarlo desde el principio.
En la parte superior izquierda de la pantalla, haz clic en Comenzar lab para empezar
Usa la navegación privada
Copia el nombre de usuario y la contraseña proporcionados para el lab
Haz clic en Abrir la consola en modo privado
Accede a la consola
Accede con tus credenciales del lab. Si usas otras credenciales, se generarán errores o se incurrirá en cargos.
Acepta las condiciones y omite la página de recursos de recuperación
No hagas clic en Finalizar lab, a menos que lo hayas terminado o quieras reiniciarlo, ya que se borrará tu trabajo y se quitará el proyecto
Este contenido no está disponible en este momento
Te enviaremos una notificación por correo electrónico cuando esté disponible
¡Genial!
Nos comunicaremos contigo por correo electrónico si está disponible
Un lab a la vez
Confirma para finalizar todos los labs existentes y comenzar este
Usa la navegación privada para ejecutar el lab
Usa una ventana de navegación privada o de Incógnito para ejecutar el lab. Así
evitarás cualquier conflicto entre tu cuenta personal y la cuenta
de estudiante, lo que podría generar cargos adicionales en tu cuenta personal.
En este lab, utilizará Cloud Debugger y Error Reporting para diagnosticar y corregir errores en la aplicación que se ejecuta.
Duración:
0 min de configuración
·
Acceso por 120 min
·
120 min para completar