{
    "generated_at": "2026-04-12T16:35:03-06:00",
    "environment": "production",
    "php_version": "8.1.34",
    "checks": [
        {
            "name": "DB principal",
            "status": "UP",
            "detail": "Conexión activa."
        },
        {
            "name": "DB logs",
            "status": "SHARED",
            "detail": "Reutiliza conexión principal."
        },
        {
            "name": "Directorio de logs",
            "status": "UP",
            "detail": "/home/redaction/public_html/errors/runtime (escribible)"
        },
        {
            "name": "Archivo app log (hoy)",
            "status": "UP",
            "detail": "921.04 KB"
        },
        {
            "name": "portal/error_log.txt",
            "status": "INFO",
            "detail": "5.66 MB"
        },
        {
            "name": "Cobertura /portal/* y /portales/*",
            "status": "WARN",
            "detail": "Analizados: 24 de 1434 | UP: 2 | WARN: 22 | DOWN: 0"
        }
    ],
    "log_files_count": 50,
    "portal_coverage": {
        "checked_at": "2026-04-12T16:35:03-06:00",
        "scope": "/portal/* + /portales/* + subdominios",
        "status": "WARN",
        "total": 24,
        "total_available": 1434,
        "up": 2,
        "warn": 22,
        "down": 0,
        "include_portales_route": true,
        "items": [
            {
                "portal_id": 2814,
                "portal": "rekinifiti",
                "subdomain": "rekinifiti",
                "status": "UP",
                "detail": "Sin incidencias.",
                "template_expected": "pais",
                "template_detected": "pais",
                "http_subdomain": 200,
                "http_portal_route": 200,
                "http_portales_route": 404,
                "duration_ms": 111,
                "subdomain_url": "https://rekinifiti.redaction.mx/index?refresh=1",
                "portal_route_url": "https://redaction.mx/portal/index.php?p=rekinifiti&refresh=1",
                "portales_route_url": "https://redaction.mx/portales/index.php?p=rekinifiti&refresh=1",
                "portales_route_enabled": true,
                "routes_checked": 2,
                "routes_ok": 2,
                "subdomain_ok": true,
                "portal_route_ok": true,
                "portales_route_ok": false
            },
            {
                "portal_id": 2813,
                "portal": "edomexhoy.mx",
                "subdomain": "redomexhoy",
                "status": "UP",
                "detail": "Sin incidencias.",
                "template_expected": "blue",
                "template_detected": "blue",
                "http_subdomain": 200,
                "http_portal_route": 200,
                "http_portales_route": 404,
                "duration_ms": 96,
                "subdomain_url": "https://redomexhoy.redaction.mx/index?refresh=1",
                "portal_route_url": "https://redaction.mx/portal/index.php?p=redomexhoy&refresh=1",
                "portales_route_url": "https://redaction.mx/portales/index.php?p=redomexhoy&refresh=1",
                "portales_route_enabled": true,
                "routes_checked": 2,
                "routes_ok": 2,
                "subdomain_ok": true,
                "portal_route_ok": true,
                "portales_route_ok": false
            },
            {
                "portal_id": 2812,
                "portal": "12/24 Noticias",
                "subdomain": "1224noticias",
                "status": "WARN",
                "detail": "Rutas con error: subdomain.",
                "template_expected": "blue",
                "template_detected": "blue",
                "http_subdomain": 0,
                "http_portal_route": 200,
                "http_portales_route": 404,
                "duration_ms": 202,
                "subdomain_url": "https://1224noticias.redaction.mx/index?refresh=1",
                "portal_route_url": "https://redaction.mx/portal/index.php?p=1224noticias&refresh=1",
                "portales_route_url": "https://redaction.mx/portales/index.php?p=1224noticias&refresh=1",
                "portales_route_enabled": true,
                "routes_checked": 2,
                "routes_ok": 1,
                "subdomain_ok": false,
                "portal_route_ok": true,
                "portales_route_ok": false
            },
            {
                "portal_id": 2811,
                "portal": "Mis Aventuras",
                "subdomain": "ment3",
                "status": "WARN",
                "detail": "Rutas con error: subdomain.",
                "template_expected": "blue",
                "template_detected": "blue",
                "http_subdomain": 0,
                "http_portal_route": 200,
                "http_portales_route": 404,
                "duration_ms": 224,
                "subdomain_url": "https://ment3.redaction.mx/index?refresh=1",
                "portal_route_url": "https://redaction.mx/portal/index.php?p=ment3&refresh=1",
                "portales_route_url": "https://redaction.mx/portales/index.php?p=ment3&refresh=1",
                "portales_route_enabled": true,
                "routes_checked": 2,
                "routes_ok": 1,
                "subdomain_ok": false,
                "portal_route_ok": true,
                "portales_route_ok": false
            },
            {
                "portal_id": 2810,
                "portal": "Juan",
                "subdomain": "subdiminio",
                "status": "WARN",
                "detail": "Rutas con error: subdomain.",
                "template_expected": "blue",
                "template_detected": "blue",
                "http_subdomain": 0,
                "http_portal_route": 200,
                "http_portales_route": 404,
                "duration_ms": 167,
                "subdomain_url": "https://subdiminio.redaction.mx/index?refresh=1",
                "portal_route_url": "https://redaction.mx/portal/index.php?p=subdiminio&refresh=1",
                "portales_route_url": "https://redaction.mx/portales/index.php?p=subdiminio&refresh=1",
                "portales_route_enabled": true,
                "routes_checked": 2,
                "routes_ok": 1,
                "subdomain_ok": false,
                "portal_route_ok": true,
                "portales_route_ok": false
            },
            {
                "portal_id": 2809,
                "portal": "Negocios, poder y más.",
                "subdomain": "negociosypoder",
                "status": "WARN",
                "detail": "Rutas con error: subdomain.",
                "template_expected": "times",
                "template_detected": "times",
                "http_subdomain": 0,
                "http_portal_route": 200,
                "http_portales_route": 404,
                "duration_ms": 286,
                "subdomain_url": "https://negociosypoder.redaction.mx/index?refresh=1",
                "portal_route_url": "https://redaction.mx/portal/index.php?p=negociosypoder&refresh=1",
                "portales_route_url": "https://redaction.mx/portales/index.php?p=negociosypoder&refresh=1",
                "portales_route_enabled": true,
                "routes_checked": 2,
                "routes_ok": 1,
                "subdomain_ok": false,
                "portal_route_ok": true,
                "portales_route_ok": false
            },
            {
                "portal_id": 2808,
                "portal": "Nembutal sodium for sale email: pablu@dr.com",
                "subdomain": "midiaro",
                "status": "WARN",
                "detail": "Rutas con error: subdomain.",
                "template_expected": "blue",
                "template_detected": "blue",
                "http_subdomain": 0,
                "http_portal_route": 200,
                "http_portales_route": 404,
                "duration_ms": 256,
                "subdomain_url": "https://midiaro.redaction.mx/index?refresh=1",
                "portal_route_url": "https://redaction.mx/portal/index.php?p=midiaro&refresh=1",
                "portales_route_url": "https://redaction.mx/portales/index.php?p=midiaro&refresh=1",
                "portales_route_enabled": true,
                "routes_checked": 2,
                "routes_ok": 1,
                "subdomain_ok": false,
                "portal_route_ok": true,
                "portales_route_ok": false
            },
            {
                "portal_id": 2807,
                "portal": "MI SIEMPRE FELIZ",
                "subdomain": "midelirio",
                "status": "WARN",
                "detail": "Rutas con error: subdomain.",
                "template_expected": "blue",
                "template_detected": "blue",
                "http_subdomain": 0,
                "http_portal_route": 200,
                "http_portales_route": 404,
                "duration_ms": 195,
                "subdomain_url": "https://midelirio.redaction.mx/index?refresh=1",
                "portal_route_url": "https://redaction.mx/portal/index.php?p=midelirio&refresh=1",
                "portales_route_url": "https://redaction.mx/portales/index.php?p=midelirio&refresh=1",
                "portales_route_enabled": true,
                "routes_checked": 2,
                "routes_ok": 1,
                "subdomain_ok": false,
                "portal_route_ok": true,
                "portales_route_ok": false
            },
            {
                "portal_id": 2806,
                "portal": "ssd chemical solution",
                "subdomain": "exxonssd",
                "status": "WARN",
                "detail": "Rutas con error: subdomain.",
                "template_expected": "blue",
                "template_detected": "blue",
                "http_subdomain": 0,
                "http_portal_route": 200,
                "http_portales_route": 404,
                "duration_ms": 184,
                "subdomain_url": "https://exxonssd.redaction.mx/index?refresh=1",
                "portal_route_url": "https://redaction.mx/portal/index.php?p=exxonssd&refresh=1",
                "portales_route_url": "https://redaction.mx/portales/index.php?p=exxonssd&refresh=1",
                "portales_route_enabled": true,
                "routes_checked": 2,
                "routes_ok": 1,
                "subdomain_ok": false,
                "portal_route_ok": true,
                "portales_route_ok": false
            },
            {
                "portal_id": 2805,
                "portal": "MIS ANUNCIOS",
                "subdomain": "misanunciosfg",
                "status": "WARN",
                "detail": "Rutas con error: subdomain.",
                "template_expected": "blue",
                "template_detected": "blue",
                "http_subdomain": 0,
                "http_portal_route": 200,
                "http_portales_route": 404,
                "duration_ms": 213,
                "subdomain_url": "https://misanunciosfg.redaction.mx/index?refresh=1",
                "portal_route_url": "https://redaction.mx/portal/index.php?p=misanunciosfg&refresh=1",
                "portales_route_url": "https://redaction.mx/portales/index.php?p=misanunciosfg&refresh=1",
                "portales_route_enabled": true,
                "routes_checked": 2,
                "routes_ok": 1,
                "subdomain_ok": false,
                "portal_route_ok": true,
                "portales_route_ok": false
            },
            {
                "portal_id": 2804,
                "portal": "Edelpinfo",
                "subdomain": "edelpinfo",
                "status": "WARN",
                "detail": "Rutas con error: subdomain.",
                "template_expected": "blue",
                "template_detected": "blue",
                "http_subdomain": 0,
                "http_portal_route": 200,
                "http_portales_route": 404,
                "duration_ms": 270,
                "subdomain_url": "https://edelpinfo.redaction.mx/index?refresh=1",
                "portal_route_url": "https://redaction.mx/portal/index.php?p=edelpinfo&refresh=1",
                "portales_route_url": "https://redaction.mx/portales/index.php?p=edelpinfo&refresh=1",
                "portales_route_enabled": true,
                "routes_checked": 2,
                "routes_ok": 1,
                "subdomain_ok": false,
                "portal_route_ok": true,
                "portales_route_ok": false
            },
            {
                "portal_id": 2803,
                "portal": "El informador",
                "subdomain": "elinformador",
                "status": "WARN",
                "detail": "Rutas con error: subdomain.",
                "template_expected": "times",
                "template_detected": "times",
                "http_subdomain": 0,
                "http_portal_route": 200,
                "http_portales_route": 404,
                "duration_ms": 183,
                "subdomain_url": "https://elinformador.redaction.mx/index?refresh=1",
                "portal_route_url": "https://redaction.mx/portal/index.php?p=elinformador&refresh=1",
                "portales_route_url": "https://redaction.mx/portales/index.php?p=elinformador&refresh=1",
                "portales_route_enabled": true,
                "routes_checked": 2,
                "routes_ok": 1,
                "subdomain_ok": false,
                "portal_route_ok": true,
                "portales_route_ok": false
            },
            {
                "portal_id": 2802,
                "portal": "Financiamiento para tus proyectos rentables",
                "subdomain": "financiamiento",
                "status": "WARN",
                "detail": "Rutas con error: subdomain.",
                "template_expected": "blue",
                "template_detected": "blue",
                "http_subdomain": 0,
                "http_portal_route": 200,
                "http_portales_route": 404,
                "duration_ms": 365,
                "subdomain_url": "https://financiamiento.redaction.mx/index?refresh=1",
                "portal_route_url": "https://redaction.mx/portal/index.php?p=financiamiento&refresh=1",
                "portales_route_url": "https://redaction.mx/portales/index.php?p=financiamiento&refresh=1",
                "portales_route_enabled": true,
                "routes_checked": 2,
                "routes_ok": 1,
                "subdomain_ok": false,
                "portal_route_ok": true,
                "portales_route_ok": false
            },
            {
                "portal_id": 2801,
                "portal": "vane",
                "subdomain": "vaneloka",
                "status": "WARN",
                "detail": "Rutas con error: subdomain.",
                "template_expected": "blue",
                "template_detected": "blue",
                "http_subdomain": 0,
                "http_portal_route": 200,
                "http_portales_route": 404,
                "duration_ms": 235,
                "subdomain_url": "https://vaneloka.redaction.mx/index?refresh=1",
                "portal_route_url": "https://redaction.mx/portal/index.php?p=vaneloka&refresh=1",
                "portales_route_url": "https://redaction.mx/portales/index.php?p=vaneloka&refresh=1",
                "portales_route_enabled": true,
                "routes_checked": 2,
                "routes_ok": 1,
                "subdomain_ok": false,
                "portal_route_ok": true,
                "portales_route_ok": false
            },
            {
                "portal_id": 2800,
                "portal": "Cambio XXI",
                "subdomain": "cambioxxi",
                "status": "WARN",
                "detail": "Rutas con error: subdomain.",
                "template_expected": "blue",
                "template_detected": "blue",
                "http_subdomain": 0,
                "http_portal_route": 200,
                "http_portales_route": 404,
                "duration_ms": 1205,
                "subdomain_url": "https://cambioxxi.redaction.mx/index?refresh=1",
                "portal_route_url": "https://redaction.mx/portal/index.php?p=cambioxxi&refresh=1",
                "portales_route_url": "https://redaction.mx/portales/index.php?p=cambioxxi&refresh=1",
                "portales_route_enabled": true,
                "routes_checked": 2,
                "routes_ok": 1,
                "subdomain_ok": false,
                "portal_route_ok": true,
                "portales_route_ok": false
            },
            {
                "portal_id": 2799,
                "portal": "Vive lago",
                "subdomain": "anunciolago",
                "status": "WARN",
                "detail": "Rutas con error: subdomain.",
                "template_expected": "blue",
                "template_detected": "blue",
                "http_subdomain": 0,
                "http_portal_route": 200,
                "http_portales_route": 404,
                "duration_ms": 222,
                "subdomain_url": "https://anunciolago.redaction.mx/index?refresh=1",
                "portal_route_url": "https://redaction.mx/portal/index.php?p=anunciolago&refresh=1",
                "portales_route_url": "https://redaction.mx/portales/index.php?p=anunciolago&refresh=1",
                "portales_route_enabled": true,
                "routes_checked": 2,
                "routes_ok": 1,
                "subdomain_ok": false,
                "portal_route_ok": true,
                "portales_route_ok": false
            },
            {
                "portal_id": 2798,
                "portal": "Mi empresa",
                "subdomain": "vivelago",
                "status": "WARN",
                "detail": "Rutas con error: subdomain.",
                "template_expected": "blue",
                "template_detected": "blue",
                "http_subdomain": 0,
                "http_portal_route": 200,
                "http_portales_route": 404,
                "duration_ms": 328,
                "subdomain_url": "https://vivelago.redaction.mx/index?refresh=1",
                "portal_route_url": "https://redaction.mx/portal/index.php?p=vivelago&refresh=1",
                "portales_route_url": "https://redaction.mx/portales/index.php?p=vivelago&refresh=1",
                "portales_route_enabled": true,
                "routes_checked": 2,
                "routes_ok": 1,
                "subdomain_ok": false,
                "portal_route_ok": true,
                "portales_route_ok": false
            },
            {
                "portal_id": 2797,
                "portal": "Metanoia",
                "subdomain": "metanoia",
                "status": "WARN",
                "detail": "Rutas con error: subdomain.",
                "template_expected": "blue",
                "template_detected": "blue",
                "http_subdomain": 0,
                "http_portal_route": 200,
                "http_portales_route": 404,
                "duration_ms": 336,
                "subdomain_url": "https://metanoia.redaction.mx/index?refresh=1",
                "portal_route_url": "https://redaction.mx/portal/index.php?p=metanoia&refresh=1",
                "portales_route_url": "https://redaction.mx/portales/index.php?p=metanoia&refresh=1",
                "portales_route_enabled": true,
                "routes_checked": 2,
                "routes_ok": 1,
                "subdomain_ok": false,
                "portal_route_ok": true,
                "portales_route_ok": false
            },
            {
                "portal_id": 2796,
                "portal": "El Manicero",
                "subdomain": "elmanicero",
                "status": "WARN",
                "detail": "Rutas con error: subdomain.",
                "template_expected": "blue",
                "template_detected": "blue",
                "http_subdomain": 0,
                "http_portal_route": 200,
                "http_portales_route": 404,
                "duration_ms": 257,
                "subdomain_url": "https://elmanicero.redaction.mx/index?refresh=1",
                "portal_route_url": "https://redaction.mx/portal/index.php?p=elmanicero&refresh=1",
                "portales_route_url": "https://redaction.mx/portales/index.php?p=elmanicero&refresh=1",
                "portales_route_enabled": true,
                "routes_checked": 2,
                "routes_ok": 1,
                "subdomain_ok": false,
                "portal_route_ok": true,
                "portales_route_ok": false
            },
            {
                "portal_id": 2795,
                "portal": "ElAcaciero.Com",
                "subdomain": "elacaciero",
                "status": "WARN",
                "detail": "Rutas con error: subdomain.",
                "template_expected": "times",
                "template_detected": "times",
                "http_subdomain": 0,
                "http_portal_route": 200,
                "http_portales_route": 404,
                "duration_ms": 275,
                "subdomain_url": "https://elacaciero.redaction.mx/index?refresh=1",
                "portal_route_url": "https://redaction.mx/portal/index.php?p=elacaciero&refresh=1",
                "portales_route_url": "https://redaction.mx/portales/index.php?p=elacaciero&refresh=1",
                "portales_route_enabled": true,
                "routes_checked": 2,
                "routes_ok": 1,
                "subdomain_ok": false,
                "portal_route_ok": true,
                "portales_route_ok": false
            },
            {
                "portal_id": 2794,
                "portal": "EL GRAN BAJÍO NETWORK NEWS",
                "subdomain": "egbnetworknews",
                "status": "WARN",
                "detail": "Rutas con error: subdomain.",
                "template_expected": "blue",
                "template_detected": "blue",
                "http_subdomain": 0,
                "http_portal_route": 200,
                "http_portales_route": 404,
                "duration_ms": 344,
                "subdomain_url": "https://egbnetworknews.redaction.mx/index?refresh=1",
                "portal_route_url": "https://redaction.mx/portal/index.php?p=egbnetworknews&refresh=1",
                "portales_route_url": "https://redaction.mx/portales/index.php?p=egbnetworknews&refresh=1",
                "portales_route_enabled": true,
                "routes_checked": 2,
                "routes_ok": 1,
                "subdomain_ok": false,
                "portal_route_ok": true,
                "portales_route_ok": false
            },
            {
                "portal_id": 2793,
                "portal": "Homhouse",
                "subdomain": "wwwhomhousecom",
                "status": "WARN",
                "detail": "Rutas con error: subdomain.",
                "template_expected": "blue",
                "template_detected": "blue",
                "http_subdomain": 0,
                "http_portal_route": 200,
                "http_portales_route": 404,
                "duration_ms": 1194,
                "subdomain_url": "https://wwwhomhousecom.redaction.mx/index?refresh=1",
                "portal_route_url": "https://redaction.mx/portal/index.php?p=wwwhomhousecom&refresh=1",
                "portales_route_url": "https://redaction.mx/portales/index.php?p=wwwhomhousecom&refresh=1",
                "portales_route_enabled": true,
                "routes_checked": 2,
                "routes_ok": 1,
                "subdomain_ok": false,
                "portal_route_ok": true,
                "portales_route_ok": false
            },
            {
                "portal_id": 2792,
                "portal": "Reusable Caluanie Muelear Oxidize | Fast and Reliable Delivery",
                "subdomain": "chemicaldepotllc",
                "status": "WARN",
                "detail": "Rutas con error: subdomain.",
                "template_expected": "blue",
                "template_detected": "blue",
                "http_subdomain": 0,
                "http_portal_route": 200,
                "http_portales_route": 404,
                "duration_ms": 247,
                "subdomain_url": "https://chemicaldepotllc.redaction.mx/index?refresh=1",
                "portal_route_url": "https://redaction.mx/portal/index.php?p=chemicaldepotllc&refresh=1",
                "portales_route_url": "https://redaction.mx/portales/index.php?p=chemicaldepotllc&refresh=1",
                "portales_route_enabled": true,
                "routes_checked": 2,
                "routes_ok": 1,
                "subdomain_ok": false,
                "portal_route_ok": true,
                "portales_route_ok": false
            },
            {
                "portal_id": 2791,
                "portal": "Noticias",
                "subdomain": "perro24",
                "status": "WARN",
                "detail": "Rutas con error: subdomain.",
                "template_expected": "blue",
                "template_detected": "blue",
                "http_subdomain": 0,
                "http_portal_route": 200,
                "http_portales_route": 404,
                "duration_ms": 213,
                "subdomain_url": "https://perro24.redaction.mx/index?refresh=1",
                "portal_route_url": "https://redaction.mx/portal/index.php?p=perro24&refresh=1",
                "portales_route_url": "https://redaction.mx/portales/index.php?p=perro24&refresh=1",
                "portales_route_enabled": true,
                "routes_checked": 2,
                "routes_ok": 1,
                "subdomain_ok": false,
                "portal_route_ok": true,
                "portales_route_ok": false
            }
        ],
        "detail": "Cobertura de subdominios, /portal/index.php y /portales/index.php por portal."
    },
    "portal_limit": 24,
    "portal_filter": ""
}