Saltar al contenido principal

monitoreo de WordPress

Monitoree cada sitio WordPress que gestiona

No hay nada que instalar en el sitio. Uptimepage comprueba cada sitio WordPress desde fuera, en una página que la caché no puede responder en su lugar, y le avisa en Slack o por correo electrónico cuando algo lo rompe, normalmente antes de que el propietario del sitio lo haya notado.

Compruebe una página que la caché no pueda responder

La mayoría de los sitios WordPress tienen una caché de páginas delante de PHP, ya sea de un plugin, del proveedor de hosting o de una CDN. Eso es bueno para los visitantes y malo para el monitoreo: la caché puede seguir sirviendo la página de inicio mientras PHP se ha caído y la base de datos no responde, así que una comprobación de la página de inicio sigue en verde durante toda la caída. Mantenga la comprobación de la página de inicio, porque es lo que ven los visitantes, y añada otra en una página que la caché omita, como /wp-json/, el índice de la API REST. Esa página no puede responder sin PHP y la base de datos, así que, cuando falla, ha fallado WordPress. Si un plugin de seguridad cierra la API REST a los visitantes, responde 401 o 403, lo que sigue demostrando que PHP y la base de datos funcionan, así que configure la comprobación para que espere ese código. Algunos plugins de caché y algunos proveedores de hosting también la guardan en caché; si el suyo lo hace, use cualquier otra página que su caché excluya.

Un 200 no demuestra que sea su sitio

Una página en blanco puede devolver un 200. También la página genérica que pone un registrador tras una renovación olvidada, o un sitio hackeado que redirige al de otra persona. Dé a la comprobación una frase que solo contenga su página real, como el nombre del sitio en el pie de página, y una respuesta sin ella cuenta como caída, sea cual sea su código de estado.

Las actualizaciones se ejecutan cuando nadie mira

Desde WordPress 5.5, los plugins y los temas pueden actualizarse solos, y las actualizaciones en segundo plano se ejecutan dos veces al día, las esté mirando alguien o no. Desde la versión 6.6, WordPress revierte una actualización de plugin que provoca un error fatal. Una actualización que rompe una página sin error fatal sigue publicada, y lo que la detecta es la comprobación del contenido o un flujo de navegador. En un monitor comprobado desde varias regiones, un fallo puntual visto desde una sola región no avisa a nadie por defecto, así que la alerta que recibe trata del sitio y no de una ruta de red defectuosa. Cuando actualice a mano, programe antes una ventana de mantenimiento y las alertas de ese sitio esperarán hasta que termine.

Una tienda que carga pero no puede vender

En una tienda WooCommerce, la página de inicio y las páginas de producto pueden cargar bien mientras una actualización, un plugin de pagos o un cambio de tema ha roto el carrito o la página de pago. Una comprobación de flujo de navegador recorre el camino de un comprador, hasta cada cinco minutos: abre un producto, lo añade al carrito, va a la página de pago y confirma que el botón «Place order» (realizar el pedido) está ahí. Elija un producto con la gestión de inventario desactivada, porque la página de pago basada en bloques reserva el inventario del carrito durante unos minutos cada vez que se carga. Cuando falla un paso, el resultado nombra ese paso, así que sabe que el problema es la página de pago y no todo el sitio. Cuántas comprobaciones de flujo tiene depende del plan.

WP-Cron espera a los visitantes

Las entradas programadas, los plugins de copias de seguridad y las tareas en segundo plano de WooCommerce esperan a WP-Cron, y WP-Cron solo arranca cuando una visita carga WordPress. Las visitas que responde la caché de páginas nunca lo cargan, así que un sitio con caché solo ejecuta WP-Cron en las visitas que la caché no responde. Los sitios que lo desactivan con DISABLE_WP_CRON dependen de un cron del sistema, y esa línea es fácil de perder al migrar de servidor. En cualquier caso, nada da error. La primera señal es una entrada marcada como «Missed schedule» (programación perdida) o una carpeta de copias de seguridad que dejó de crecer hace semanas. Una comprobación heartbeat convierte ese silencio en una alerta: ejecute WP-Cron desde el cron del sistema, envíe un ping a la URL del heartbeat justo después y, cuando los pings se detengan, se enterará.

Los certificados y los dominios caducan sin avisar

La renovación de Let's Encrypt suele romperse después de un cambio de DNS o de una migración de servidor, y nadie lo nota hasta que los navegadores muestran una advertencia. Los dominios de los clientes suelen estar en la cuenta del registrador del propio cliente, pagados con una tarjeta que caducó el año pasado. Una comprobación TLS avisa antes de que caduque el certificado. Fije el aviso unos días por debajo del punto en que se ejecuta su renovación, para que una renovación normal pase en silencio y solo le llegue una fallida. Una comprobación de caducidad de dominio avisa 30 días antes de que termine el registro, lo que deja tiempo para llamar al cliente.

Páginas de estado que sus clientes pueden abrir

Un cliente puede tener una página de estado con su marca y solo sus propios sitios. Los incidentes se publican en ella a medida que fallan las comprobaciones, así que, cuando un cliente pregunte qué pasó anoche, usted le envía un enlace.

Una lista de clientes sin un formulario por sitio

El formulario sirve para los primeros sitios. Para toda una lista de clientes, el proveedor de Terraform, la API REST y el servidor MCP crean los monitores de una sola vez, con las mismas comprobaciones y los mismos canales de alerta en cada uno, y con Terraform la lista vive en un archivo que puede revisar.

Un crontab para el usuario propietario del sitio. Fije el periodo del heartbeat al intervalo del cron, aquí 5 minutos, con 5 minutos de margen

# Primero añada a wp-config.php: define( 'DISABLE_WP_CRON', true );
# Ejecute como el usuario del sitio, no como root: WP-CLI se niega a ejecutarse como root.
URL=https://app.uptimepage.dev/ping/your-token
*/5 * * * * cd /var/www/example.com && /usr/local/bin/wp cron event run --due-now --quiet; curl -fsS -o /dev/null "$URL/$?"

# Hosting compartido sin WP-CLI: ponga esto en el campo de cron del proveedor,
# con el intervalo más corto que permita, y ajuste a él el periodo del heartbeat.
# curl -fsS -o /dev/null "https://example.com/wp-cron.php?doing_wp_cron" && curl -fsS -o /dev/null https://app.uptimepage.dev/ping/your-token

Preguntas frecuentes

¿Cómo monitoreo un sitio WordPress?
Añada dos comprobaciones HTTP: una en la página de inicio y otra en una página que la caché omita, como /wp-json/, el índice de la API REST. La página de inicio muestra lo que reciben los visitantes, y la página sin caché muestra si PHP y la base de datos siguen funcionando detrás de la caché. Añada comprobaciones de TLS y de caducidad de dominio, y un heartbeat para WP-Cron. No se instala nada en el sitio.
¿Tengo que instalar un plugin de WordPress?
No. Todas las comprobaciones se ejecutan desde las sondas de Uptimepage contra el sitio público, así que no se añade nada a WordPress y nada deja de informar cuando WordPress se rompe. Los únicos cambios que podría hacer son en el servidor, una línea de cron y una línea en wp-config.php, si quiere que un heartbeat vigile WP-Cron.
¿Las comprobaciones cada 60 segundos ralentizan el sitio?
No. Una comprobación descarga el HTML de una página, sin imágenes, scripts ni estilos, una vez por minuto desde cada región de sondeo. Incluso en la página sin caché, donde cada comprobación ejecuta PHP, eso queda muy por debajo del tráfico normal de un sitio en producción. Las comprobaciones HTTP no ejecutan JavaScript, así que no aparecen en Google Analytics. Un flujo de navegador ejecuta los scripts de la página como un visitante, así que sus ejecuciones pueden aparecer allí.
Un plugin de seguridad o un firewall bloquea las comprobaciones. ¿Qué hago?
Para las comprobaciones HTTP, deje pasar las peticiones por User-Agent: acepte las peticiones cuyo User-Agent contenga uptimepage/. Limite la excepción a las URL que monitorea, porque cualquiera puede enviar esa cabecera. Las direcciones IP de las sondas pueden cambiar sin previo aviso, así que una lista de IP permitidas acabará fallando. Los flujos de navegador envían otro User-Agent y envían formularios, así que una regla escrita para las comprobaciones HTTP no los cubre. La página del bot, enlazada abajo, tiene más detalles.
¿Puede monitorear el proceso de pago de WooCommerce?
Sí, con una comprobación de flujo de navegador que añade un producto al carrito y abre la página de pago. Se detiene antes del pago, así que no cobra nada ni envía correos de pedido.
¿Puede un cliente tener su propia página de estado?
Sí. Una página de estado solo muestra los monitores que usted pone en ella, así que un cliente ve sus propios sitios y nada más, con su logotipo y sus colores. El número de páginas de estado depende del plan.

De un vistazo

  • Plugin que instalar ninguno, las comprobaciones se ejecutan desde fuera
  • Intervalo de comprobación cada 60 s
  • Canales de alerta correo electrónico, Slack, Telegram, webhooks y más
  • WP-Cron heartbeat desde un cron del sistema
  • Avisos de caducidad certificado SSL y dominio
  • Precio para empezar gratis, sin tarjeta

Enlaces

Empiece en menos de 5 minutos.

Empezar gratis

funciones · precios · notas