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 <http://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

    1. almeis

      Reblogged this on PASIÓN PC | BLOG DE SISTEMAS and commented:
      Añade tus pensamientos aquí… (opcional)

      Responder

    Dejar un comentario

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