Skip to content
Python module for hardware and system monitoring (Linux)
Python
Branch: master
Clone or download

Latest commit

Fetching latest commit…
Cannot retrieve the latest commit at this time.

Files

Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
examples add comment Sep 7, 2019
statux
.gitignore add setup builds folders Jun 14, 2018
LICENSE
README.rst
setup.py

README.rst

STATUX

Statux is a Python library for Linux that provides methods to get hardware and system information. Useful for monitoring tasks.

Battery

Method Returns
battery_info() Manufacturer, model and s/n
status() Full, Charging or Discharging
is_present() True if battery is present
voltage() battery voltage (mV)
current() battery current (mA)
energy() battery energy (mWh)
power() battery power (mW)
charge() battery charge (mAh)
capacity() current capacity percent
capacity_level() Full, Normal, Low or Critical
low_level() value set for low battery level
critical_level() value set for critical level
action_level() value set for critical action
critical_power_action() PowerOff, Hibernate or HybridSleep
remaining_time() Remaining battery life
wear_level() Battery health level
technology() Chemistry of battery
supply_type() Battery, Mains, UPS, etc
lid_state() Open or Close
ac_adapter_online() True if AC adapter is online

CPU

Method Returns
next_value() CPU Load percentage. Note: Needs to instantiate Load() class
logical_cpus() Number of logical processors
physical_cpus() Number of physical processor
frequency() Current CPU frequency
max_frequency() CPU max frequency
frequency_percent() Current CPU frequency percent
is_x86_64() True if CPU is AMD64 or Intel64 i.e. 64 bit capable
model_name() CPU model name

DISKS

Method Returns
block_devices() sda, sdb, nvmen1, hda, hdb, etc
partitions() sda1,sda2, sdb1, nvmen1p1, hda1, hdb2, etc
is_rotational() If block device is rotational
is_removable() If block device is removable
model() Model name of the given device (sda, hdb..)
disk_naming() a namedtuple with persistent names of a disk or a partition (id, label, path, uuid partlabel and partuuid)
mounts_info() A dict with mounted partitions as key and a namedtuple with mount point, filesystem and mount options as value
mounted_partitions() mounted partitions and mount points
total_size() Total size of a partition
free_space() Free space of a partition
used_space() Used space of a partition
used_space_percent() Used space percent of a partition
bytes_read() Bytes read in a partition
bytes_write() Bytes written in a partition
bytes_read_write() Bytes read and wirtten in a partition
bytes_read_write_multi() Bytes read and writen in several partitions

NETWORK

Method Returns
get_interfaces() All network interfaces
get_address() MAC address os a interface
get_state() Operational state of a interface
download_bytes() total bytes downloaded in a interface
upload_bytes() total bytes uploaded in a interface
down_up_bytes() total bytes up-downloaded in a interface
download_bytes() average download speed per second
upload_speed() average download speed per second
down_up_speed() average up-download speed per second

RAM

Method Returns
total() Total RAM size
free() Free RAM
free_percent() Free RAM percent
available() Available RAM
available_percent() Available RAM percent
buff_cache() Buffer, cached and slab memory
used() Used RAM
used_percent() Used RAM percent

SYSTEM

Method Returns
boot_time() Time at which the system booted
uptime() Time elapsed since system boot time
init() Init system name
hostame() Hostname
user() User name
display_protocol() Display protocol (x11 or wayland)
kernel_release() Kernel release
kernel version() Kernel version
architecture() Machine type
session_id() Current session id
distro_name() Distro short name
distro_full_name() Full distro description
distro_version() Distro version
distro_url() Distro url
linux_distribution() Distro info (id, version, codename)

TEMP

Method Returns
cores() temperature of each core
cpu() CPU temp
max_val() maximum value of the temp sensors obtained

Note:

These methods are based on the proc and sys filesystems and are tested in Linux 4.15. It is possible that some methods are not available in previous kernel versions

Install:

By pip (It may not be the latest version):

pip install statux

Cloning this repo :

git clone https://github.com/Arg0s1080/statux.git
cd statux
sudo python3 setup.py install
You can’t perform that action at this time.