Monitoring Applications in Google Cloud

Práctica Terraform basada en el lab GSP659.

Provisiona la infraestructura de observabilidad para una app App Engine: uptime checks, alertas de latencia y canal de notificaciones por email.

Nota: el código de la aplicación Flask se despliega con gcloud app deploy, no con Terraform. Este ejemplo cubre exclusivamente la capa de monitoreo.

Recursos creados

RecursoDescripción
google_app_engine_applicationAplicación App Engine en el proyecto
google_monitoring_uptime_check_configUptime check HTTPS cada 60s
google_monitoring_alert_policy (latencia)Alerta cuando p99 > umbral configurado
google_monitoring_alert_policy (uptime)Alerta ante falla del uptime check
google_monitoring_notification_channelCanal de email (opcional)

Uso

terraform init
terraform plan -var="project_id=<PROJECT_ID>" -var="uptime_check_host=<PROJECT_ID>.appspot.com"
terraform apply -var="project_id=<PROJECT_ID>" -var="uptime_check_host=<PROJECT_ID>.appspot.com"

Con notificaciones por email:

terraform apply \
  -var="project_id=<PROJECT_ID>" \
  -var="uptime_check_host=<PROJECT_ID>.appspot.com" \
  -var="notification_email=tu@email.com"

Variables principales

VariableRequeridaDefaultDescripción
project_idGCP project ID
uptime_check_hostHost del uptime check
app_engine_location_idus-centralLocation de App Engine
regionus-central1Region para recursos regionales
notification_emailnullEmail para alertas
latency_threshold_seconds8Umbral p99 latencia (segundos)