Skip to content

senceryucel/alarmtop

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 

Repository files navigation

alarmtop

alarmtop screenshot

alarmtop is a terminal monitoring dashboard with simple real-time anomaly detection.

It shows CPU, RAM, disk usage, disk io (%), network (download/upload), and GPU util/VRAM in the terminal.

Each panel learns its own baseline and enters an alert state if the anomaly lasts long enough.

There are many amazing monitoring tools (btop, htop, glances, ...) but most of them do not do anomaly detection. The few that do it focus on a Web UI. I wanted the same idea in the terminal.

Features

  • Terminal UI with charts
  • Per-panel anomaly detection with different risk levels
  • Per-panel alert background colors after a configurable persist time
  • CPU: overall usage + per-core usage + top 5 processes by CPU
  • RAM: used/available + swap
  • Disk usage: hard rule (no learning), turns red when usage is too high
  • Disk I/O: util% from /proc/diskstats
  • Network: download + upload charts in one panel, one detector on total traffic
  • GPU: NVIDIA via nvidia-smi, AMD via amdgpu sysfs

Install

You only need Python and a terminal.

  • Python (>= 3.10)
  • pip, setuptools, wheel
python -m pip install --upgrade pip setuptools wheel
python -m pip install -e .
alarmtop

Usage

Keys:

  • q: quit
  • r: reset baselines and clear chart history

Config:

  • Edit src/alarmtop/config.py

Notes

  • Tested on Ubuntu 22.04 and 24.04. Expected to work on Linux systems. Feel free to open an issue if you face problems on other distros.
  • For nvidia gpus, nvidia-smi must be available
  • For amd gpus, /sys/class/drm/card*/device (amdgpu sysfs) must be readable.
  • Requires a utf-8 terminal font that can render braille characters for charts.

About

Terminal monitoring dashboard with real-time adaptive anomaly detection

Resources

License

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages