Monitoreando Apache con server-status (mod_status)

Apache Web Server

Apache Web Server

En una entrada anterior hablábamos sobre el proceso de instalación de Apache en un entorno Debian. Sin configurar, todito de fábrica. En un 100% de las ocasiones, se tiene un servicio funcional pero en ese mismo porcentaje existen mejoras que pueden aplicarse a la configuración para hacer de nuestro web server una aplicación óptima.

Revisar nuestro status del servidor no se limita a revisar los logs ni los recursos consumidos por nuestro servicio Apache. Por default, la instalación de Apache en Debian incluye el módulo mod_status y activo para monitorear nuestro Servicio desde nuestro navegador predilecto. Para ingresar basta con ingresar en nuestra barra de dirección:

http://localhost/server-status

Y tendremos una pantalla similar a:

server-status

server-status

En el cuál podemos visualizar información acerca de nuestro servidor web, desde uptime, uso de CPU, cantidad de conexiones concurrentes actuales y el estado de éstas. Realmente muy útil.

Por default, la información es estática. Si se desea que ésta se actualice cada 10 segundos, es necesario indicarlo de la manera:

http://localhost/server-status?refresh=Y

Configuración

La configuración puede variar de una distro a otra, pudiéndose realizar directamente en el httpd.conf, apache2.conf o, como es el caso de Debian, directamente en el archivo de configuración del módulo. Para poder utilizarlo, es necesario contar con el módulo mod_status y podremos verificarlo con:

# /usr/local/apache2/bin/httpd -M | grep status
 status_module (shared)

Si tenemos suerte, lo veremos como salida en el comando (shared). Y sino, a instalarlo.

Dado que la configuración de Debian se da en forma de arbol (en realidad nuestro archivo de configuración es /etc/apache2/apache2.conf), es necesario revisar sus configuraciones correspondientes. En este archivo de configuración se encuentra:

# Include module configuration:
Include mods-enabled/*.load
Include mods-enabled/*.conf

Es decir, se incluyen todos los archivos .conf de los módulos habilitados. De ésta manera, para mod_status habremos de modificar status.conf gregando las líneas:

<Location /server-status>
SetHandler server-status
Order deny,allow
Deny from all
Allow from 127.0.0.1 ::1
</Location>

Y básicamente ésto sería todo. Podremos ingresar a través localhost/server-status, activación del handler con el mismo nombre y permitiendo/negando los accesos a través de las reglas establecidas (para ejemplificar, solo se permitirá el acceso desde 172.0.0.1).

Dentro de este mismo archivo, fuera de Location, es posible establecer la directiva

ExtendedStatus On

Para obtener mayor detalle del status de nuestro Apache. O colocarla en Off si deseamos los detalles básicos. Después de cada cambio en nuestra configuración, para aplicar los cambios debemos reiniciar el Apache preferentemente con restart.

# /etc/init.d/apache2 restart

Dudas?

 

Facebook Twitter Email

Entradas relacionadas

También te podría gustar...

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *