Este lab se complementa con la práctica Terraform en README.md dentro de esta misma carpeta.
Recursos identificados
- App Engine (standard): creación de la aplicación App Engine y deploy de un servicio Node.js.
- Service Monitoring (Cloud Monitoring): definición de un SLO de disponibilidad para el servicio App Engine
default(rolling window 7 días, objetivo 99.5%). - Cloud Monitoring Alerting: creación de un alert atado al SLO (burn rate) con lookback de 10 minutos y threshold 1.5.
- Notification channels: canal de notificación por email (configurado desde la UI).
- Métricas/telemetría:
- Tráfico HTTP a App Engine (
/random-error) para inducir errores. - Cálculo de burn rate del error budget vía
select_slo_burn_rate.
- Tráfico HTTP a App Engine (
- IAM / APIs:
- APIs típicamente requeridas:
appengine.googleapis.com,monitoring.googleapis.com. - La creación/edición de SLOs y alert policies requiere permisos de Monitoring (por ejemplo roles tipo
roles/monitoring.editoren el proyecto).
- APIs típicamente requeridas:
Comandos ejecutados
git clone https://github.com/haggman/HelloLoggingNodeJS.git
cd HelloLoggingNodeJS
edit index.js
gcloud app create --region={{{project_0.startup_script.app_region|REGION}}}
gcloud app deploy
while true; \
do curl -s https://$DEVSHELL_PROJECT_ID.appspot.com/random-error \
-w '\n' ;sleep .1s;done
gcloud app deploy