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.
graph TD
%%{init: {'theme': 'mc','layout': 'elk'}}%%
GSheetCellComponent-bbcvr[Sheet Cells ]
style GSheetCellComponent-bbcvr stroke:#a170ff
CreateData-5zr0k[Create Data]
style CreateData-5zr0k stroke:#a170ff
Switch-n1nr4[Switch]
style Switch-n1nr4 stroke:#a170ff
GmailMesageComponent-enpm4[<div><img src="/_astro/gmail.CLxyIGOu.svg" style="height: 20px !important;width: 20px !important"/></div>Gmail Message2]
style GmailMesageComponent-enpm4 stroke:#a170ff
GmailMesageComponent-hzzfk[<div><img src="/_astro/gmail.CLxyIGOu.svg" style="height: 20px !important;width: 20px !important"/></div>Gmail Message2]
style GmailMesageComponent-hzzfk stroke:#a170ff
GmailMesageComponent-l0ex2[<div><img src="/_astro/gmail.CLxyIGOu.svg" style="height: 20px !important;width: 20px !important"/></div>Gmail Message2]
style GmailMesageComponent-l0ex2 stroke:#a170ff
APIRequest-fg3or[API Request2]
style APIRequest-fg3or stroke:#a170ff
Prompt-6idci[<div><img src="/_astro/square-terminal.BMOXc-nZ.svg" style="height: 20px !important;width: 20px !important"/></div>título3xx]
style Prompt-6idci stroke:#a170ff
Prompt-3w0jh[<div><img src="/_astro/square-terminal.BMOXc-nZ.svg" style="height: 20px !important;width: 20px !important"/></div>cuerpo2]
style Prompt-3w0jh stroke:#a170ff
Prompt-dmgnv[<div><img src="/_astro/square-terminal.BMOXc-nZ.svg" style="height: 20px !important;width: 20px !important"/></div>título4xx]
style Prompt-dmgnv stroke:#a170ff
Prompt-8br5u[<div><img src="/_astro/square-terminal.BMOXc-nZ.svg" style="height: 20px !important;width: 20px !important"/></div>cuerpo4xx]
style Prompt-8br5u stroke:#a170ff
Prompt-8utdo[<div><img src="/_astro/square-terminal.BMOXc-nZ.svg" style="height: 20px !important;width: 20px !important"/></div>título5xx]
style Prompt-8utdo stroke:#a170ff
Prompt-s80c7[<div><img src="/_astro/square-terminal.BMOXc-nZ.svg" style="height: 20px !important;width: 20px !important"/></div>cuerpo5xx]
style Prompt-s80c7 stroke:#a170ff
CreateData-5zr0k -.- Switch-n1nr4
linkStyle 0 stroke:#a170ff
GSheetCellComponent-bbcvr -.- APIRequest-fg3or
linkStyle 1 stroke:#a170ff
APIRequest-fg3or -.- CreateData-5zr0k
linkStyle 2 stroke:#a170ff
Prompt-6idci -.- Prompt-3w0jh
linkStyle 3 stroke:#a170ff
Prompt-3w0jh -.- GmailMesageComponent-enpm4
linkStyle 4 stroke:#a170ff
Switch-n1nr4 -.- Prompt-6idci
linkStyle 5 stroke:#a170ff
Switch-n1nr4 -.- Prompt-dmgnv
linkStyle 6 stroke:#a170ff
Switch-n1nr4 -.- Prompt-8utdo
linkStyle 7 stroke:#a170ff
Prompt-dmgnv -.- Prompt-8br5u
linkStyle 8 stroke:#a170ff
Prompt-8utdo -.- Prompt-s80c7
linkStyle 9 stroke:#a170ff
Prompt-8br5u -.- GmailMesageComponent-hzzfk
linkStyle 10 stroke:#a170ff
Prompt-s80c7 -.- GmailMesageComponent-l0ex2
linkStyle 11 stroke:#a170ff
Control de estado web
🧩 Descripción general
Este flujo de trabajo automatiza la supervisión del estado de los sitios web mediante la verificación de sus códigos de estado HTTP. Lee una lista de nombres y URLs de sitios web desde un documento de Google Sheets, realiza solicitudes HTTP a cada sitio y categoriza las respuestas. Basándose en el código de estado (por ejemplo, 3xx, 4xx, 5xx), genera y envía automáticamente notificaciones por correo electrónico personalizadas a través de Gmail para alertar sobre posibles problemas como redirecciones, errores del cliente o fallos del servidor.
⚙️ Características principales
- Obtiene datos de sitios web por lotes desde una hoja de cálculo de Google Sheets.
- Realiza solicitudes HTTP en paralelo para verificar el estado de múltiples sitios web de manera eficiente.
- Crea registros de datos dinámicos que contienen el nombre del sitio web y su código de estado HTTP.
- Enruta los datos a diferentes ramas de procesamiento según la categoría del código de estado utilizando un conmutador condicional.
- Genera asuntos y cuerpos de correo electrónico específicos para cada contexto según el tipo de error.
- Envía correos electrónicos de notificación a través de Gmail para sitios web con códigos de estado problemáticos.
🔄 Pasos del flujo de trabajo
| Nombre del componente | Rol en el flujo de trabajo | Entradas clave | Salidas clave |
|---|---|---|---|
| Celdas de la hoja | Obtiene la lista inicial de sitios web a supervisar desde un documento de Google Sheets. | Rango de Google Sheets que contiene los nombres y URLs de los sitios web. | Datos por lotes de nombres y URLs de sitios web. |
| Solicitud API | Realiza una solicitud HTTP GET a cada URL del sitio web para recuperar su código de estado. | Lista de URLs de sitios web. | Datos de respuesta HTTP, incluido el código de estado para cada sitio. |
| Crear datos | Construye un registro de datos unificado para cada sitio web, combinando su nombre y el código de estado HTTP recuperado. | Nombre del sitio web desde la hoja y código de estado desde la solicitud API. | Registro de datos estructurado con los campos nombre_del_sitio y status. |
| Conmutador | Evalúa el campo status y enruta cada registro de datos a una rama de salida específica basándose en el primer dígito del código de estado (por ejemplo, 3xx, 4xx, 5xx). |
Registro de datos que contiene el nombre del sitio web y el código de estado. | Datos enrutados a una de varias rutas de salida condicionales. |
| Plantilla (título3xx, cuerpo2, etc.) | Una serie de componentes de plantilla que generan la línea de asunto y el texto del cuerpo para los correos electrónicos de notificación, insertando dinámicamente el nombre del sitio web y el código de estado. | Nombre del sitio web y código de estado de los datos enrutados. | Asunto o texto del cuerpo del correo electrónico formateado. |
| Mensaje de Gmail | Envía el correo electrónico de notificación final utilizando el asunto y el cuerpo generados. | Dirección de correo electrónico del destinatario, asunto del correo y cuerpo del correo. | Confirmación del correo electrónico enviado. |
🧠 Notas
- El flujo de trabajo está diseñado para procesar múltiples sitios web en paralelo para mayor eficiencia.
- Requiere credenciales válidas de la API de Google para acceder a Google Sheets y Gmail.
- La lógica de notificación se activa solo para códigos de estado distintos a 200 (redirecciones y errores).
- El destinatario del correo y las plantillas están preconfigurados y deben ajustarse para uso en producción.
- El flujo de trabajo asume que la hoja de Google de entrada tiene columnas llamadas
nombre_sitiowebyurl.