Control de estado web
Verifica automáticamente el estado de sitios web, detecta errores comunes y envía notificaciones para mantener la disponibilidad y funcionamiento del servicio.
🧩 Descripción general
El flujo automatiza la verificación de disponibilidad de un conjunto de sitios web definidos en una hoja de cálculo de Google Sheets. Para cada URL, se realiza una petición HTTP, se registra el código de estado y se clasifica en redirecciones (3xx), errores de cliente (4xx) o errores de servidor (5xx). Dependiendo de la categoría, el sistema genera un asunto y un cuerpo de correo específicos y envía notificaciones por Gmail para alertar a los responsables.
⚙️ Funcionalidades principales
- Lectura por lote de sitios y URLs desde Google Sheets.
- Ejecución paralela de peticiones HTTP GET a cada sitio.
- Creación de registro con nombre del sitio y código de estado.
- Enrutamiento condicional basado en el rango de códigos HTTP.
- Generación dinámica de asunto y cuerpo de correo según el tipo de error.
- Envío automático de correos a través de Gmail con la información generada.
- Manejo de excepciones: se omiten ramas vacías y se continúa con la siguiente iteración.
🔄 Pasos del flujo de trabajo
| Nombre del componente | Rol en el flujo | Entradas clave | Salidas clave |
|---|---|---|---|
| GSheetCellComponent | Lee las filas de una hoja de cálculo que contiene nombre_del_sitio y URL. | Archivo de Google Sheets, rango, primera fila, hoja actual | Datos en formato Data con cada registro |
| API Request | Realiza una petición HTTP GET a cada URL y devuelve el código de estado HTTP. | URLs de GSheetCellComponent, método GET, timeout |
Objeto Data con el código de estado (status_code) |
| Create Data | Construye un registro con nombre_del_sitio y status (código de estado). | status_code, nombre_del_sitio |
Datos con campos status y nombre_del_sitio |
| Switch | Rutea cada registro a una rama según el rango de códigos (3xx, 4xx, 5xx). | status, nombre_del_sitio |
Caso 3_output, case 4_output, case 5_output |
| Prompt – Título | Genera el asunto del correo según la categoría de error. | nombre_del_sitio (y status en 4xx/5xx) |
Texto del asunto (prompt) |
| Prompt – Cuerpo | Construye el cuerpo del correo con detalles y recomendaciones. | nombre_del_sitio, status |
Texto del cuerpo (prompt) |
| Gmail Message | Envía el correo con asunto y cuerpo generados. | Destinatario fijo, asunto (subject), cuerpo (body), credenciales de Gmail |
Confirmación de envío (Data) |
Nota: Los componentes Prompt se instancian de forma específica para cada rama (3xx, 4xx, 5xx), pero el nombre permanece Prompt.
🧠 Notas
- El flujo opera en modo lote, procesando cada registro de manera paralela (máx. 5 ejecuciones simultáneas).
- Si la hoja de cálculo está vacía o los datos no se pueden leer, la rama completa se omite automáticamente.
- Se requiere una credencial válida de Google Sheets y de Gmail para la lectura y envío de correos.
- Los registros de error 5xx incluyen recomendaciones más detalladas que los 4xx, pues suelen indicar fallos del servidor o de la configuración.
- Los Prompt utilizan variables en la plantilla (por ejemplo,
{nombre_del_sitio},{status}), las cuales se rellenan con los valores del registro. - No se expone ningún ID interno ni nombres de variables técnicas en la documentación.
- Todos los mensajes de correo se envían al mismo destinatario (
davidrr1733@gmail.com), pero esto puede modificarse cambiando el camporecipient.