Contar el número de procesos Apache (HTTPD)

En algunas ocasiones es necesario saber el número de procesos Apache que se están ejecutando en nuestros servidores de producción y asi tener una idea aproximada de la carga del servidor web. El número de procesos httpd tiene una relación directa con las directivas: MaxClients y ServerLimit y aunque solo estas 2 directivas no determinan el rendimiento del servidor web si tienen gran incidencia.

Contar número de procesos httpd (Probado en CentOS / Fedora / RHEL / Scientific Linux)
$ pgrep httpd | wc -l 
Script que permite enviar un email si el número de procesos httpd es mayor que un determinado número
#
#!/usr/bin/env bash
# GNU shell que permite enviar un email si el número de
#  procesos httpd es mayor que un determinado número
#
# ---------------------------------------------------------------
# Copyleft 2009 Yoander Valdés (sedlav) Rodríguez <https://www.librebyte.net/>
# Este script es liberado bajos los téminos de la GNU GPL
# version 2.0 o superior
# --------------------------------------------------------------
# Uso:
# El script obtiene la cantidad de procesos apache (httpd)
# y envia un email a $EMAIL en caso de haber más
# procesos que $TOPS.
# Puede ejecutar el script de forma manual o como tarea
#  programada
# -------------------------------------------------------------
# Última actualización: 15 de abril del 2011
# -------------------------------------------------------------
#!/usr/bin/env bash
#
# Cantidad de procesos httpd que se están ejecutando
#
APS=$(pgrep httpd | wc -l)
#
# Número máximo de procesos httpd
#
TOPS=200
#
# Ponga aquí su correo eléctronico
#
EMAIL=
#
# Comparar y enviar email
#
(( $TOPS < $APS )) &&
echo "Cantidad de procesos httpd: $APS ( $(date +'%Y-%m-%d %T') )" | 
mail -s 'Alerta!!. Muchos procesos httpd están teniendo lugar' $EMAIL
#
#

Para ejecutar el scrip como tarea programada siga los siguientes pasos
– crear fichero vacío:

$ touch apacheps-counter

– Abra apacheps-counter con su editor preferido
– Copie el código del script y peguele en apacheps-counter
– Asígnele permisos de ejecución

$ chmod a+x apacheps-counter

– Copiar a /usr/local/bin

# cp -pv apacheps-counter /usr/local/bin/

– Agregar el crontab

# Ejecutar cada 15 min
 */15 * * * *         /usr/local/bin/apacheps-counter

Lectura recomendadas

– man pgrep
– man wc

1 comentario en “Contar el número de procesos Apache (HTTPD)”

Deja un comentario

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

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.