| Formulario de acceso |
|---|
| Anuncios |
|---|
|
|
| Apachetop, monitorizando Apache en tiempo real |
|
|
| miércoles, 30 de agosto de 2006 | ||
|
Muchos administradores habrán necesitado en alguna ocasión alguna herramienta que, de una forma clara y concisa, monitorice los mensajes del servidor apache en tiempo real. Si bien hay numerosas aplicaciones que hacen esto, la gran mayoría termina presentando una información, más o menos compleja y detallada, a través de un interface web que se refresca cada cierto tiempo, lo cual no es muy razonable si lo que buscamos es una herramienta rápida, accesible y que consuma el mínimo de recursos. A medio camino entre el uso de la orden tail sobre los ficheros de mensajes y las herramientas antes referidas, se encuentra Apachetop, un instrumento que adapta la filosofía del comando top al procesamiento de los mensajes de Apache. Instalación En el momento en que estas líneas son escritas, el proyecto Apachetop se encuentra bajo la versión 0.12.6 y la mayoría de distribuciones contemplan en su paquetería una versión actualizada del programa. No obstante y dado que estamos hablando de una herramienta destinada a satisfacer las inquietudes de muchos administadores, es muy probable que éstos quieran controlar la instalación del programa paso a paso y a ello vamos a dedicar los párrafos que siguen, dando por hecho que quien decida instalar directamente el paquete compilado pasará a la lectura del siguiente punto sin más dilación. Debido a que el proyecto ha cambiado ya varias veces de ubicación, se incluye la última versión de las fuentes del programa en la sección de descargas de esta web. Para la correcta compilación de Apachetop será necesario tener instalados las los paquetes con el código fuente y las librerías de ncurses y de readline, así como el procesador de macros m4 y preferentemente un compilador de c++ como gcc-c++. Una vez extraído el fichero, nos trasladaremos a su interior y ejecutaremos la orden configure: [root@linux ~]# ./configure --with-logfile=/var/log/httpd/access_log El parámetro with-logfile no es necesario, aunque nos ayudará a la hora de ejecutar el programa si sólo tenemos previsto procesar un archivo de mensajes y queremos evitar tener que introducirlo cada vez. Cuando el proceso de configuración haya finalizado, ejecutaremos la orden make sobre el mismo directorio y, tras unos segundos de compilación, tendremos a nuestra disposición el binario en la ruta src/apachetop. Ejecución y uso La forma más sencilla de ejecutar nuestro monitor de mensajes es la siguiente (si hemos compilado el programa con la opción with-logfile, el parámetro f no es necesario): [root@linux ~]# apachetop -f [fichero de mensajes] Lo cual convertirá nuestra consola en algo similar a esto:
![]()
Como podemos observar, la similitud con el comando top es más que evidente. Las cinco primeras líneas presentan información interesante relativa a los procesos en curso. La primera línea contienen la hora del último acceso, el tiempo de ejecución del comando y la hora actual. Las cuatro líneas siguientes presentan la información por pares: En las dos primeras líneas se contemplan los datos almacenados desde la ejecución del comando y en las dos últimas se presenta la información actual en tiempo real, permaneciendo allí los datos durante un tiempo por defecto que se puede parametrizar. Atendiendo al primer par, la primera línea, de izquierda a derecha, contiene el total de solicitudes que el programa ha procesado desde su ejecución, el número de peticiones por segundo, el total de datos transferidos, el volúmen de transferencia de esos datos por segundo y, por último, una media de cantidad de datos por solicitud. La segunda línea presenta la información de respuesta del servidor por código y se divide en la cantidad de respuestas y, entre paréntesis, su porcentaje con respecto al total. El segundo par de líneas muestra información idéntica al primer par, pero sólo se visualizará la media de los datos que se han leído desde el parámetro especificado durante la ejecución del programa. Por defecto, ese parámetro se establece en un valor treinta segundos. Mediante los parámetros H (hits) y T (time) podremos cambiar ese valor a nuestro antojo, lo cual reflejará distintos estados en el último par de líneas descrito. Por ejemplo, si queremos que Apachetop eleve el periodo de muestreo de la información a todos los mensajes recibidos en los últimos sesenta segundos, teclearemos lo siguiente: [root@linux ~]# apachetop -T 60 Si nuestro servidor está muy cargado, puede ser preferible atender a la información de las últimas n solicitudes, en vez de atender a la información por tiempo. Esto aligerará el proceso de cálculo de la monitorización. Si, por ejemplo, queremos atender a la información de las últimas quinientas solicitudes, independientemente del tiempo en que fueron procesadas, teclearemos esto: [root@linux ~]# apachetop -H 500 Otros parámetros que podemos utilizar durante la ejecución del programa son q, que le indica al programa que guarde las cadenas de búsqueda (por defecto las borra); l, que le indica al programa que convierta todas las direcciones a minúsculas y trate, a nivel de estadísticas, las letras mayúsculas y minúsculas como una misma cosa; s <cantidad>, que indica que de una dirección dada, se procesarán únicamente el número de segmentos especificado en <cantidad> y suponiendo que cada segmento termina en una barra (/); p, que indica que se conserve la cadena http:// al comienzo de cada dirección procesada (por defecto, la cadena es eliminada para poder presentar más información); r, que le indica al programa cada cuánto tiempo ha de refrescar la información en pantalla (no confundir con el parámetro T), que por defecto establece el valor en cinco segundos. Como con el comando top, una vez ejecutado Apachetop, podemos hacer uso de una serie de atajos de teclado que nos permitirán presentar la información que queda bajo las cinco primeras líneas de la forma más variada. Para empezar, la información se reparte en columnas que representan, para el periodo de tiempo o de solicitudes dado, el total de solicitudes, las solicitudes por segundo, los Kilobytes transmitidos y los Kilobytes transmitidos por segundo (REQS REQ/S KB KB/S). La última columna presenta por defecto la dirección accedida (URL). Si queremos que la información de las cuatro primeras columnas pase a representar los códigos de respuesta del servidor (2xx 3xx 4xx 5xx), pulsaremos la tecla n. La información puede ordenarse mediante la pulsación de la tecla s. Dicha pulsación presentará un submenú que nos permitirá ordenar por los siguientes criterios, dependiendo de la tecla pulsada: R - Solicitudes (REQUESTS) Si en pantalla se está presentando la información por códigos de respuesta, el submenú se presentará y las líneas se ordenarán como sigue: 2 2xx Cada ordenación es independiente. Es decir, podemos ordenar por Bytes por segundo, cambiar con la tecla n la visualización por código de respuesta y ordenar por código de error (4xx). Las columnas se ordenarían en este caso por código de error y a su vez por Bytes por segundo. Mediante la pulsación de la tecla d cambiaremos la información presentada en la última columna. La información presentada rotará y se agrupará siguiendo este orden: Direcciones accedidas (URLs), IPs de acceso y Direcciones de origen (REFERRERs). Podemos pulsar la tecla p para "congelar" la información que tenemos en pantalla. Aunque las estadísticas se seguirán procesando, la pantalla no se refrescará hasta que no volvamos a pulsar la tecla p. Cuando el número de accesos es mayor que uno, podemos observar, al inicio de cada Dirección/IP/Origen un asterisco (*). Mediante la pulsación de las teclas Derecha e Izquierda del teclado numérico, podemos expandir o esconder el componente y presentar información adicional. Tomemos como ejemplo la imágen que vimos al comienzo de este apartado. La información está siendo presentada por número de IP. Si pulsamos la tecla Derecha del teclado numérico, se mostrará la información adicional que queda escondida cada vez que pulsamos la tecla d. En este caso se abren dos apartados: Direcciones de origen y Direcciones accedidas. Para volver a esconder la información, pulsaremos la tecla Izquierda del teclado numérico. Si queremos cambiar de componente, bajaremos y subiremos el asterisco con las teclas Arriba y Abajo del teclado numérico. Para acceder mejor a la información en determinados momentos, podemos hacer uso de la mencionada tecla p, que dejará de refrescar la pantalla y nos permitirá una lectura de los datos más sosegada. Durante la expansión de los datos, podemos eliminar la presentación de información de cada uno de los tres apartados disponibles pulsando la tecla t, que presentará el siguiente submenú de ocultación de columnas: u - Direcciones (URLS)
Sólo los usuarios registrados pueden escribir comentarios. Powered by AkoComment 2.0! |
||
| < Anterior | Siguiente > |
|---|








