user@devops:~$ cat README.md
Netdev Watch
# Descripción
Netdev Watch es una herramienta CLI en C++23 que lee los contadores de red del kernel Linux desde /proc/net/dev — los 16 campos RX/TX por interfaz (bytes, paquetes, errores, drops, fifo, frame, compressed, multicast). Presenta una tabla por interfaz (lo, eth0...) con totales formateados de forma legible (34.6M / 648.0M) y separador de miles para paquetes (1,515,100). Marca con umbral de color las interfaces con errores o drops (verde = limpia, amarillo = errores presentes). Modo watch (--watch N) con refresco periodico que calcula tasas en vivo entre muestras (RX rate, TX rate, RX pkt/s, TX pkt/s) como delta de contadores. Incluye contexto del sistema: load average (/proc/loadavg) y uptime (/proc/uptime). Salida JSON valida para scripting (--json), sin colores para pipes (--no-color) y self-test con 35 casos (--selftest) que verifica el parser contra lineas reales y sinteticas de /proc/net/dev. Parsing estricto: lineas malformadas o truncadas se rechazan. Cero dependencias: compilacion directa con g++ -std=c++23, solo biblioteca estandar.
# Características principales
$ Contadores de red del kernel: /proc/net/dev con los 16 campos RX/TX por interfaz
$ Formato humano: totales legibles (34.6M / 648.0M) y separador de miles para paquetes (1,515,100)
$ Umbral de color por interfaz: verde = limpia, amarillo = errores o drops presentes
$ Modo watch con tasas en vivo entre muestras: RX rate, TX rate, RX pkt/s, TX pkt/s
$ Contexto del sistema: load average (/proc/loadavg) y uptime (/proc/uptime)
$ Salida JSON valida para scripting (--json)
$ Self-test con 35 casos incluyendo lectura real de /proc/net/dev (--selftest)
$ Cero dependencias: compilacion directa con g++ sin CMake (C++23, GCC 14)
# Galería
# Tecnologías utilizadas