Tengo un sitio web con un script personalizado que se ejecuta en un servicio de alojamiento VPS. Todos los guiones salen a través de index.php usando mod_rewrite y .htaccess para URLs amigables¿Cómo rastrear el script PHP ejecutando un proceso determinado?
Algo en mi guión está generando un alto uso de la CPU, como se muestra:
Cuando voy y strace
un proceso dado consigo esto que no entiendo:
setitimer(ITIMER_PROF, {it_interval={0, 0}, it_value={90, 0}}, NULL) = 0
rt_sigaction(SIGPROF, {0x7a6b8f, [PROF], SA_RESTORER|SA_RESTART, 0x2af8ae8742f0}, {0x7a6b8f, [PROF], SA_RESTORER|SA_RESTART, 0x2af8ae8742f0}, 8) = 0
rt_sigprocmask(SIG_UNBLOCK, [PROF], NULL, 8) = 0
Esto se repite continuamente en un bucle infinito.
Lo que necesito saber es cómo rastrear el script PHP exacto que causa este problema. ¿Alguna sugerencia?
Habilite el registro de errores. Establecer el tiempo máximo de ejecución. Echa un vistazo al registro de errores que el script no funciona. Probablemente, cree su propio controlador de errores que pueda volcar los detalles de la solicitud en caso de que se desencadene el error de tiempo de espera, para que pueda comenzar a reproducir esto con un depurador remoto. – hakre
¿Y qué API estás usando? CGI? – hakre