Monitorizar threads en IHS con mod_mpmstats

Vamos a utilizar el servidor web de IBM IHS al cual le voy cogiendo el ritmo tras experimentar con servidores Websphere y tener unas necesidades reales en servidores de produccion.

Mas adelante pondre como funciona IHS pero por ahora he descubierto este modulo: mod_mpmstats el cual biene muy bien para monitorizar estadisticas en tiempo real de los accesos a un apache, en este caso IHS.

Este modulo viene de mod_status y esta adaptado para que nos permita ver una linea en el error_log de apache.

La docu oficial esta en: http://publib.boulder.ibm.com/httpserv/ihsdiag/2.0/mod_mpmstats.html

1.- Dicho modulo viene en el paquete IHS Diagnostic Tools and Information

2.- En windows accedemos a la ultima version en la carpeta extraida: c:\ihsdiag-1.4.10\2.0\win32 donde
copiamos “mod_mpmstats.so” a nuestra carpeta de modulos y luego lo referenciamos
de la siguiente manera. En linux es lo mismo, siempre teniendo en cuenta como donde tenemos la carpeta de modulos o como referenciamos a ella.

3.- En el fichero de configuracion de IHS “httpd.conf” añadimos:

Loadmodule mpmstats_module modules/mod_mpmstats.so
ReportInterval 10

Aqui hemos hecho la llamada al modulo, y le ponemos la directiva “ReportInterval” la cual especifica el intervalo en segundos al reportar las estadisticas del  numero de threads (hilos) en sus diferentes estatus.

4.- Reiniciamos el IHS o hacemos un reload.

5.- En Unix basta con hacemos un tail -f a la instancia donde este activado ( si tenemos el IHS en varias instancias) o al log de errores, en este caso el “error_log” por defecto:

tail -f /opt/IHS/logs/error_log

En Windows debemos de usar un editor de texto que nos permita refrescar los datos.

6.- Deberemos de hacer peticiones al servidor web para que se reflejen las estadisticas en el error_log. Podemos hacer un benchmarking para saturar el apache. Los datos podrian ser los siguientes:

[Mon Dec 29 12:07:28 2008] [error] [client 127.0.0.1] File does not exist: D:/WebSphere6/HTTPServer/htdocs/en_US/images/odot.jpg, referer: http://localhost/
[Mon Dec 29 12:07:28 2008] [notice] mpmstats: rdy 248 bsy 2 rd 1 wr 0 ka 1 log 0 dns 0 cls 0
[Mon Dec 29 12:07:28 2008] [error] [client 127.0.0.1] File does not exist: D:/WebSphere6/HTTPServer/htdocs/en_US/images/odot.jpg, referer: http://localhost/
[Mon Dec 29 12:07:30 2008] [notice] mpmstats: rdy 244 bsy 6 rd 0 wr 0 ka 6 log 0 dns 0 cls 0

En las lineas que nos aparece como [notice] vemos los datos de la nueva funcionalidad.

  • rdy (ready)     numero de threads arrancados y disponibles para recibir peticiones
  • bsy (busy)     numero de threads ocupados por peticiones

Si nos fijamos vemos que el numero de threads en total suman 250, que es el numero de “ThreadsPerChild 250” que hemos especificado en la configuracion del modulo de multiprocesamiento de Apache por defecto.

  • rd (reading)     the number of busy web server threads currently reading the request from the client
  • wr (writing)     the number of busy web server threads that have read the request from the client but are either processing the request (e.g., waiting on a response from WebSphere Application Server) or are writing the response back to the client
  • ka (keepalive)     the number of busy web server threads that are not processing a request but instead are waiting to see if the client will send another request on the same connection; refer to the KeepAliveTimeout directive to decrease the amount of time that a web server thread remains in this state
  • log (logging)     the number of busy web server threads that are writing to the access log
  • dns (dns lookup)     the number of busy web server threads that are performing a dns lookup
  • cls (closing)     the number of busy web server threads that are waiting for the client to acknowledge that the entire response has been received so that the connection can be closed

Todos estos datos se ven con mas claridad en un entorno de produccion que en uno de pruebas ya que los accesos nos puede indicar como esta de saturado un IHS, y si tenemos un sistema de balanceo podemos ver como esta de repartidas las conexiones en varios IHS.

Este modulo se puede hacer mas extensible y al integrarlo con un WAS ver los accesos al mismo.

Etiquetas: , , ,

5 comentarios to “Monitorizar threads en IHS con mod_mpmstats”

  1. Swersrent Says:

    Hi! A good forum, glad to join you🙂

  2. Errorsoming Says:

    I’m the only one in this world. Can please someone join me in this life? Or maybe death…

  3. becysheency Says:

    Buenas

    Queria saludar a la gente que administra este maravilloso lugar por que desde que lo he descubierto
    me ha ayudado bastante, siempre encuentro lo que busco y es bastante interesante a parte de que aprendo siempre que visito
    el foro, seguir asi por favor siempre con este nivel Muchas Gracias !

    Mira La Liga BBVA por Internet

  4. becysheency Says:

    Hola

    Queria felicitar a la gente que administra este maravilloso lugar por que desde que lo he encontrado
    me ha servido bastante, siempre encuentro lo que busco y es bastante interesante a parte de que aprendo siempre que visito
    el foro, seguir asi por favor siempre con este nivel Muchas Gracias !

    Mira La Liga BBVA por Internet

  5. BewaxDuew Says:

    Great article you’ve got there. Keep up the good work!

    Ferienparks

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s


A %d blogueros les gusta esto: