Cómo depurar un servidor web que no responde

Cómo depurar un servidor web que no responde

Tenemos unaInstancia EC2 medianaejecuta Ubuntu 12.04 y sirve alrededor de una docena de pequeñas aplicaciones web PHP a través de Apache.

Aproximadamente cada dos días, el servidor deja de responder y es necesario reiniciar la instancia para restaurar la funcionalidad. Durante este tiempo, no se puede acceder al servidor a través de HTTP o SSH.

Cada vez, la última solicitud de Apache registrada es a una aplicación PHP que sirve un documento PDF de 4 MB. El agente de usuario siempre identifica al cliente como un iPad (específicamente Mozilla/5.0 (iPad; CPU OS 6_1_3 like Mac OS X) AppleWebKit/536.26 (KHTML, like Gecko) Version/6.0 Mobile/10B329 Safari/8536.25) y, a menudo, tiene la misma dirección IP y, por lo tanto, probablemente sea el mismo usuario.

La aplicación PHP es una aplicación heredada y verifica algunos permisos antes de enviar el contenido de un archivo desde el disco al cliente. No hemos podido reproducir este problema nosotros mismos, ni usando un iPad ni accediendo al archivo por ningún otro medio.

Hemos probado algunas soluciones de monitoreo para intentar tener una mejor idea de lo que sucede cuando el servidor falla, pero ninguna de ellas parece mostrar ningún problema con los recursos del sistema.

Mi pregunta es ¿cuáles son algunas estrategias que podemos utilizar para intentar solucionar y, con suerte, resolver este problema?

Respuesta1

Comience monitoreando los recursos del sistema (carga de CPU, memoria, disco), por ejemplo con Collectd o Sysstat.

Tenga en cuenta que me estoy arriesgando aquí, el problema que está describiendo puede resultar del agotamiento de un recurso (muy probablemente la memoria), ejecute egrep -i 'killed process' /var/log/*para buscar invocaciones asesinas de OOM.

Los registros del sistema pueden contener rastros de la causa ( /var/log/messages, registros de errores de Apache).

Intente habilitar registros más detallados y preste mucha atención a su sistema mientras lo prueba.

información relacionada