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_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

Project details


Download files

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

Source Distribution

statux-0.1.2.tar.gz (21.8 kB view hashes)

Uploaded Source

Built Distribution

statux-0.1.2-py3-none-any.whl (40.3 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page