user@devops:~$ cat README.md
softnet-watch
# Description
softnet-watch (cpp-softnet-watch) is a per-CPU Linux NAPI / softnet RX monitor written in C++23 with no external dependencies. It reads /proc/net/softnet_stat (one hex line per CPU) and supports both the 13-column kernel 6.8 layout and the 15-column layout (cpu in field 12, input_qlen and process_qlen). KPIs: processed, dropped, squeeze, RPS, flow-limit, backlog, queues and hottest CPU. Per-core health: OK / WARN (squeeze) / HOT (drops or backlog). Watch mode (--watch N) with delta and pkt/s rate (first frame never uses parse-time dt). JSON (--json) with summary + cpus array. --demo with 8 CPUs. Filters --cpu, --alerts, --sort. --file parses dumps and skips # comments. --no-color with a mutable ANSI palette (0 escapes in pipes). Selftest 58 checks: hex parser, 13/15-col layouts, filters, JSON, live /proc read. Zero deps: g++ -std=c++23 -O2 -Wall -Wextra.
# Key features
$ Reads /proc/net/softnet_stat: one hex line per CPU (13 and 15 columns)
$ Per-core OK/WARN/HOT health (drops, squeeze, backlog, flow-limit)
$ KPIs: processed, dropped, squeeze, RPS, flow-limit, backlog, queues
$ Watch mode (--watch N) with deltas and pkt/s rates between snapshots
$ JSON output (--json) with summary + cpus (python -m json.tool)
$ --demo 8 CPUs and --no-color with 0 ANSI codes
$ Filters --cpu N, --alerts and --sort processed|dropped|squeeze|backlog|rate
$ Selftest 58 checks + zero dependencies: g++ -std=c++23
# Gallery
# Technologies used