AZ-900

Deep Dive

D3 · Gestión, seguridad y cumplimiento

Monitoreo y alertas en Azure

Azure Monitor, Log Analytics, Application Insights y Service Health. El monitoreo no es solo métricas: es la capacidad de detectar problemas antes de que impacten a los usuarios y demostrar cumplimiento de SLA.

Icon-manage-317

Azure Monitor — la plataforma central de observabilidad

Azure Monitor es el servicio paraguas que recolecta, analiza y actúa sobre datos de telemetría de todos los recursos de Azure. No es un solo producto sino una plataforma que unifica múltiples capacidades.

Arquitectura de Azure Monitor

Fuentes de datos

Azure Resources (VMs, SQL, Storage, etc.)
Aplicaciones (via App Insights SDK)
Sistemas on-premises (via agents)
Otros clouds (via connectors)
Activity Log (operaciones en Azure)

Almacenamiento

Métricas → Azure Monitor Metrics Store (93 días)
Logs → Log Analytics Workspace (30-730 días)
Activity Log → 90 días (extensible a Storage)
Traces → Application Insights (90 días)

Consumo

Dashboards (Azure Portal / Grafana)
Alertas → email, SMS, webhook, Logic App
Autoscale (escalar basado en métricas)
Workbooks (reportes interactivos)
Power BI (análisis avanzado)

Métricas — datos numéricos en tiempo real

Las métricas son valores numéricos que se recolectan a intervalos regulares (típicamente 1 minuto). Describen algún aspecto del sistema en un momento dado.

Métricas por tipo de recurso

Virtual Machine

CPU percentageAvailable Memory BytesDisk Read/Write BytesNetwork In/Out

Azure SQL Database

CPU percentageDTU consumptionSessions countStorage used

App Service

RequestsResponse time (ms)Http 5xx (errors)Memory working set

Storage Account

TransactionsIngress/Egress bytesAvailabilitySuccessE2ELatency

Métricas de SLA — los "nines"

SLADowntime/añoDowntime/mes
99%3.65 días7.3 horas
99.9%8.7 horas43.8 min
99.95%4.4 horas21.9 min
99.99%52.6 min4.4 min
99.999%5.3 min26.3 seg

Regla rápida para el examen

99.9% (3 nines) = ~43 min downtime/mes. 99.99% (4 nines) = ~4 min downtime/mes. Cada nine extra = 10x menos downtime.

Logs y Log Analytics — análisis con KQL

Los logs son registros detallados de eventos. A diferencia de las métricas (números), los logs contienen contexto: qué pasó, quién lo hizo, cuándo, con qué resultado.

Tipos de logs en Azure

Activity Log

Registro de operaciones en el plano de control de Azure: quién creó/modificó/borró qué recurso. Retención 90 días.

María borró la VM "web-01" el 2024-01-15 a las 14:32

Resource Logs (Diagnostics)

Logs operacionales de recursos específicos: queries SQL, requests HTTP, operaciones de storage. Hay que habilitarlos.

Query SQL: SELECT * FROM orders tardó 4,523ms (lento)

Entra ID Sign-in Logs

Todos los intentos de autenticación: éxitos, fallos, MFA, Conditional Access. Retención 30 días (P1/P2) o 7 días (free).

Login fallido desde 185.134.21.1 (Rusia) para admin@contoso.com

Alert Logs

Historial de alertas disparadas. Cuándo, por qué métrica/condición, qué acción se tomó.

Alert "CPU > 90%" disparada para VM "prod-web-01" a las 09:45

KQL — Kusto Query Language

Log Analytics usa KQL para consultar logs. El AZ-900 no evalúa escribir KQL, pero sí saber que existe y para qué sirve.

Errores de la última hora

AzureActivity
| where TimeGenerated > ago(1h)
| where ActivityStatus == "Failed"
| project TimeGenerated, Caller, OperationName

Top 10 IPs con más fallos de login

SigninLogs
| where ResultType != "0"
| summarize Fallos=count() by IPAddress
| top 10 by Fallos

CPU promedio de VMs en las últimas 24h

Perf
| where TimeGenerated > ago(24h)
| where ObjectName == "Processor"
| summarize avg(CounterValue) by Computer

Métricas vs Logs — diferencia clave para el examen

Métricas

  • Valores numéricos (CPU %, bytes, ms)
  • Recolectadas cada 1 minuto automáticamente
  • Almacenadas 93 días por defecto
  • Ideales para alertas y dashboards en tiempo real
  • Sin contexto adicional — solo el número

Logs

  • Registros de eventos con contexto (quién, qué, cuándo)
  • Hay que habilitarlos explícitamente (diagnostics)
  • Almacenados en Log Analytics Workspace
  • Ideales para auditoría, forense y análisis profundo
  • Más ricos en información pero más costosos de almacenar

Alertas y Action Groups

Las alertas monitorizan condiciones y notifican (o actúan) cuando se cumplen. Un Action Group define quién recibe la notificación y qué acción se toma.

Anatomía de una alerta

Scope

¿Sobre qué recurso? (VM, SQL, Subscription, RG)

Condition

¿Qué condición? Métrica > umbral, log query resultado, activity log event

Action Group

¿Qué hacer cuando se dispara? Email, SMS, Azure Function, Logic App, ITSM

Alert Details

Nombre, severidad (0-4), descripción

Action Groups — tipos de acciones

Notifications

Email, SMS, Push (Azure app), Voice call

Actions - ITSM

Crear ticket en ServiceNow, Jira, PagerDuty

Actions - Automation

Trigger Azure Function, Logic App, Webhook

Actions - Runbook

Ejecutar Azure Automation Runbook (ej: reiniciar VM)

Severidades: 0=Critical, 1=Error, 2=Warning, 3=Informational, 4=Verbose. Se usan para filtrar y priorizar.

Icon-manage-310

Application Insights — APM para aplicaciones

Application Insights es el servicio de Application Performance Management (APM) de Azure. Monitorea aplicaciones en tiempo real: rendimiento, errores, usuarios, dependencias.

Live Metrics

Métricas en tiempo real con latencia < 1 segundo. Ver requests, dependencias y errores mientras ocurren.

Request Tracking

Cada HTTP request registrado: URL, duración, código de respuesta, éxito/fallo. Percentiles p50, p95, p99.

Dependency Tracking

Llamadas a SQL, APIs externas, queues. Detecta qué dependencia es el cuello de botella.

Exception Tracking

Errores no controlados y excepciones con stack trace completo. Agrupados por tipo.

User Analytics

Cuántos usuarios activos, flujos de navegación, funnels de conversión, retención.

Availability Tests

Pruebas sintéticas desde múltiples regiones. Alerta si tu URL no responde en < X ms o devuelve error.

Application Insights vs Azure Monitor

Application Insights es una característica de Azure Monitor. Azure Monitor es la plataforma general para infraestructura. Application Insights está especializado en aplicaciones. Ambos almacenan datos en Log Analytics Workspace. Los datos de App Insights son consultables con KQL desde Azure Monitor.

Icon-general-4

Azure Service Health — estado de la plataforma

Azure Service Health informa sobre el estado de los servicios de Azure que tú usas, en las regiones que usas. Distingue entre problemas de la plataforma y problemas de tu configuración.

Azure Status

Estado global de Azure: incidents que afectan a múltiples clientes o regiones completas. Información pública en status.azure.com.

Cuándo usar

Consultar cuando hay un incidente mayor que afecta a muchos clientes.

Service Health

Estado personalizado para los servicios y regiones QUE TÚ USAS. Incluye service issues, planned maintenance y health advisories.

Cuándo usar

Monitoreo diario de los servicios relevantes para tu organización.

Resource Health

Estado de tus recursos individuales específicos. ¿Esta VM específica está sana? ¿Tuvo un reinicio no planeado?

Cuándo usar

Diagnóstico cuando un recurso específico tiene problemas.

Cálculo de SLA compuesto

Cuando una solución depende de múltiples servicios en serie, el SLA compuesto es el producto de los SLAs individuales. Cada componente reduce el SLA total.

Ejemplo: app web típica

Azure App Service99.95%
Azure SQL Database99.99%
Azure Storage99.9%

SLA compuesto

0.9995 × 0.9999 × 0.999 = 0.9983

SLA compuesto ≈ 99.83% → ~12.6 horas de downtime potencial al año

Regla importante

El SLA compuesto es SIEMPRE menor o igual al SLA más bajo de los componentes. Agregar más servicios en serie siempre reduce el SLA total. Para mejorar: usar redundancia (Availability Zones, multi-region) que multiplica el uptime en paralelo.

¿Entendiste este tema?

Pon a prueba lo que acabas de aprender

¿Qué servicio de Azure permite crear alertas automáticas cuando el uso de CPU de una VM supera el 90% durante 5 minutos?