Obteniendo las estadísticas del sistema con dstat

Herramientas para monitorizar y supervisar sistemas Linux las hay a docenas, pero pocas tan completas como dstat. Un software que reúne las mejores características de programas similares como vmstat, iostat, netstat y ifstat, superando algunas de sus limitaciones.

Dstat es capaz de mostrarnos una amplia variedad de información en columnas a todo color, simplemente escribiendo:

dstat

Si queremos afinar un poco más podemos monitorizar elementos específicos: memoria, CPU, uso de disco en operaciones de escritura/lectura, estadísticas de red, etc..

Al ejecutar la ayuda del programa:

dstat --help

vamos a ver todas las combinaciones posibles

En este ejemplo nos va a mostrar el uso de CPU, las estadística de disco y red, procesos y consumo de memoria. Además le añado la opción (-t) de que me muestre la hora de ejecución:

dstat -cdmnpt

Tenemos la opción de elegir el tiempo de refresco o latencia en la lectura de datos (2 seg. de forma predeterminada):

dstat 5

Incluso ir un poco más allá. Vamos a hacer que se ejecute cada 5 segundos un total de 20 veces:

dstat 5 20

Y exportar el resultado saliente mientras se está ejecutando, a un archivo cvs para su posterior lectura con LibreOffice Calc o cualquier otra suite ofimática:

dstat --output /home/jose/archivo_dstat.csv

El programa está escrito en Python y desarrollado de forma modular, lo que permite añadir nuestros propios plugins, a la extensa colección existente.

[jose@replicante ~]$ dstat --list
internal:
aio, cpu, cpu-adv, cpu-use, cpu24, disk, disk24, disk24-old, epoch, fs, int, int24, io,
ipc, load, lock, mem, mem-adv, net, page, page24, proc, raw, socket, swap, swap-old,
sys, tcp, time, udp, unix, vm, vm-adv, zones
/usr/share/dstat:
battery, battery-remain, condor-queue, cpufreq, dbus, disk-avgqu, disk-avgrq,
disk-svctm, disk-tps, disk-util, disk-wait, dstat, dstat-cpu, dstat-ctxt, dstat-mem,
fan, freespace, fuse, gpfs, gpfs-ops, helloworld, innodb-buffer, innodb-io, innodb-ops,
lustre, md-status, memcache-hits, mysql-io, mysql-keys, mysql5-cmds, mysql5-conn,
mysql5-innodb, mysql5-innodb-basic, mysql5-innodb-extra, mysql5-io, mysql5-keys,
net-packets, nfs3, nfs3-ops, nfsd3, nfsd3-ops, nfsd4-ops, nfsstat4, ntp, postfix, power,
proc-count, qmail, redis, rpc, rpcd, sendmail, snmp-cpu, snmp-load, snmp-mem, snmp-net,
snmp-net-err, snmp-sys, snooze, squid, test, thermal, top-bio, top-bio-adv,
top-childwait, top-cpu, top-cpu-adv, top-cputime, top-cputime-avg, top-int, top-io,
top-io-adv, top-latency, top-latency-avg, top-mem, top-oom, utmp, vm-cpu, vm-mem,
vm-mem-adv, vmk-hba, vmk-int, vmk-nic, vz-cpu, vz-io, vz-ubc, wifi, zfs-arc, zfs-l2arc,
zfs-zil

Vamos a jugar un poco con las diferentes opciones, mostrando el espacio disponible, la frecuencia de la CPU y la información de las aplicaciones que consumen más memoria y recursos (CPU) del sistema, así como los procesos I/O.

dstat --freespace --cpufreq --top-cpu --top-mem --top-io


Dstat está disponible en los repositorios de las principales distribuciones GNU/Linux. En la web de su autor encontraréis más documentación sobre su manejo.

5 thoughts on “Obteniendo las estadísticas del sistema con dstat”

  1. Álvaro Aller says:

    Transmission en segundo lugar x consumo
    de cpu 😉

    1. tannhausser says:

      Casualidades pero….aprovecho para recomendar una serie noruega llamada Skam.

      1. edmk says:

        De qué va la serie 😉

      2. alunado says:

        en la web varias paginas dicen que ‘skam’ es una serie para jovenes adolecentes -young teenagers-.
        Vos tenes mas de 40 camarada tannhausser!!
        jeje…

        1. tannhausser says:

          Diría que es más una serie de adolescentes, que para adolescentes (que también).

          Y me gusta la manera de pensar que tienen los noruegos y el grado de libertad/tolerancia que tienen desde muy jóvenes.

          Y claro después esta todo el tema del russ bus:

          https://deerasmusenoslo.wordpress.com/2014/05/04/russefeiring/

Deja un comentario