Si tienes un portátil con un i7 a 2.7 GHz y 64GB de memoria RAM, probablemente el consumo de recursos de una aplicación no te preocupa… ¿o si?. En general, no debemos estar preocupados por el consumo de recursos de las aplicaciones que utilizamos. Sin embargo, en ocasiones, si que nos interesa controlar lo que consume una u otra aplicación. Ya sea porque somos desarrolladores y queremos hacer aplicaciones responsables (y no me refiero a responsive o adaptable, mejor dicho), o bien, porque hemos detectado que una determinada aplicación se nos escapa de las manos, en ocasiones, nos interesa controlar o monitorizar una determinada aplicación. Para monitorizar nuestro sistema podemos utilizar htop, que es un monitor de procesos interactivo.
Sin embargo, htop es de esas aplicaciones para el terminal, que nada mas iniciarla nos puede llegar a atemorizar. Y nos puede llegar a asustar, mas que nada por la cantidad de información que nos proporciona. Por esta razón es necesario, dedicarle un tiempo para conocerla en profundidad y poder aprovechar toda la información que nos facilita para de esta manera monitorizar nuestro sistema adecuadamente. Por supuesto que existen otras herramientas gráficas como puede ser CPU-G, pero te muestran mas información relativa al hardware que a los procesos.
htop o monitorizar nuestro sistema.
Como he indicado en la introducción, htop es una aplicación para el terminal que nos permite monitorizar nuestro sistema. Esta monitorización del sistema la realiza a base de listar todos los hilos que están corriendo en nuestro sistema, no solo los procesos. Por supuesto, esto nos da una cantidad de información que es complicada de manejar si no es porque nos proporciona herramientas para ordenar, filtar, buscar y marcar. Incluso nos da la posibilidad de matar procesos.
Para un uso práctico de htop es necesario conocer algunos atajos de teclado.
Página arriba
yPágina abajo
→ desplaza la pantalla hacia arriba o hacia abajo respectivamente.↑
y↓
→ mueven el cursor.←
y→
→ desplazan la pantalla a izquierda y derecha respectivamente.F10
oq
→ nos permiten salir de la aplicaciónF1
oh
→ nos muestran la pantalla de ayuda. Para salir de la pantalla de ayuda tenemos que pulsar la teclaq
.
Gestionando lo que vemos
Como he comentado anteriormente, con htop tenemos mucha información a la vista, y esto seguro que logra despistarnos. Por esta razón, a la hora de monitorizar nuestro sistema, es importante ordenar la vista, para ello, disponemos de los siguientes atajos de teclado,
M
→ Ordena lo hilos por el uso de memoria que cada uno de ellos hace.P
→ Hace lo mismo que en el caso anterior, pero el ordenamiento lo hace por uso del procesador.T
→ Otra forma de ordenamiento, que en este caso es por tiempo.F4
→ Nos permite filtrar lo que vemos utilizando el nombre del comando que inició el hilo. No es necesario introducir el nombre completo del comando, solo parte, aunque esto dependerá de las coincidencias que existan. Una vez introducido, pulsamosEnter
para establecer el filtro. Para quitar el filtro, procedemos de la misma forma, pero utilizaremosEscape
.F5
→ Con esta opción podemos elegir entre la vista de lista o la vista de árbol.F6
→ Su funcionamiento depende de la vista que tengamos seleccionada. Así, si tenemos la vista lista, nos permite seleccionar el criterio bajo el que se ordenará la lista. Entre los criterios de ordenamiento disponibles tenemos el número PID, el usuario, la prioridad, el uso de CPU o de memoria, tiempo, etc. Mientras que si estamos en la vista árbol nos permite colapsar las ramas. De esta manera tendremos toda la información correspondiente a los hilos de un determinado proceso. Así por ejemplo, y por simplificar, si un proceso tiene 4 hilos y cada hilo consume 5% de la memoria RAM, al colapsarlo nos aparecerá 20% de memoria RAM.
Mostrar u ocultar información
Otra opción para gestionar todos los hilos que aparecen en htop es mediante la opción de mostrar y ocultar procesos. Así tenemos las siguientes opciones,
u
→ Nos muestra únicamente aquellos procesos lanzados por un determinado usuario. No tiene porque ser un usuario físico. Así al pulsar la teclau
, nos permitirá elegir entre los diferentes usuarios de nuestra máquina.
K
→ Muestra u oculta los hilos del núcleo. Ojo, que es mayúsculas, con lo que tienes que utilizar la combinaciónmayúsculas+k
.H
→ Muestra u oculta los hilos del usuario.
Buscando, marcando y matando hilos y procesos
F3
→ Nos permite buscar procesos e hilosespacio
→ Con esta opción podemos marcar o señalar un hilo, lo que nos permitirá seguirle la pista. Con la cantidad de hilos y procesos que se muestran, la posibilidad de marcar un hilo, es fundamental para no perderla de vista, y ver como evoluciona con el paso del tiempo.F
→ Esta opción nos permite seguir a un proceso cuando tenemos activada la vista lista. Se trata de una opción alternativa a la anterior, y mucho mas enfocada al seguimiento de la evolución de un determinado proceso. Para desactivar el modo de seguimiento solo tenemos que desplazarnos con los cursores.F9
→ Envía una señal al proceso marcado. Al pulsar el atajo de teclado, nos mostrará una lista de señales disponbles para enviarle al proceso. Así podemos mandarle la señal de matar el procesoSIGKILL
ó9
.F7
yF8
→ nos permite aumentar o disminuir la prioridad de un determinado proceso.
Configuración
Con F2
podemos configurar no solo la información que vemos en htop
, sino como la vemos. Es decir, podemos definir que métricas queremos que aparezcan y de que manera. Así, por ejemplo, podemos ver la cantidad de memoria que estamos utilizando en forma de barra o bien, mediante datos numéricos.
Así podemos definir que métricas queremos controlar y en que columna verla. Existen dos columnas, derecha e izquierda. Normalmente la izquierda es la que aparece con barras y la de la derecha es la que aparecen los datos numéricos, pero tu la puedes configurar como quieras o necesites.
Por otro lado, también puedes configurar lo que quieres que se muestre y como se muestra. Así, puedes definir que se muestren por defecto los hilos del núcleo o que se muestren los hilos en diferentes colores. También es posible indicarle que que actualice el nombre de los procesos en cada refresco o incluso que empiece a contar los núcleos desde cero en lugar desde uno.
Además también es posible definir los colores que quieres que utilice htop
, teniendo posibilidad de diferentes conjuntos, monocromático, blanco y negro, negro noche, gris roto..
Y por último nos permite definir las columnas que queremos que se visualicen en htop
y el orden de esas columnas.
Conclusión
Como has podido ver, htop
es toda una herramienta para monitorizar nuestro sistema. Donde podemos inspeccionar hasta el mas mínimo detalle del mismo, y hacer un seguimiento pormenorizado del mismo. Pudiendo en caso necesario matar aquellos procesos que no estén respondiendo, o dándole mas prioridad si es necesario. Pero sobre todo, es una herramienta altamente configurable, lo que nos permite ajustarla a nuestras necesidades para que monitorizar el sistema sea algo relativamente intuitivo.
En el caso de la configuración, yo como en muchas otras ocasiones, prefiero no manipularlo en exceso. Y lo prefiero porque cuando nos enfrentamos a otro equipo no tendremos esa configuración, lo que nos dificultará el trabajo.
Más información,