Skip to main content

Python module for hardware and system monitoring

Project description

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

Battery

Method Returns
battery() 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
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
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

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for statux, version 0.1.1
Filename, size File type Python version Upload date Hashes
Filename, size statux-0.1.1-py3-none-any.whl (39.2 kB) File type Wheel Python version py3 Upload date Hashes View
Filename, size statux-0.1.1.tar.gz (18.8 kB) File type Source Python version None Upload date Hashes View

Supported by

Pingdom Pingdom Monitoring Google Google Object Storage and Download Analytics Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page