Metadata-Version: 1.1
Name: statux
Version: 0.1.2
Summary: Python module for hardware and system monitoring
Home-page: https://github.com/Arg0s1080/statux
Author: Ivan Rincon
Author-email: ivan.rincon76@gmail.com
License: GPLv3
Description: 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
        
        
Keywords: linux stats monitoring sensors proc sys battery cpu disk net ram hardware cpuinfo diskstats meminfo mounts partitions power_supply thermal temp
Platform: UNKNOWN
Classifier: Development Status :: 3 - Alpha
Classifier: License :: OSI Approved :: GNU General Public License v3 (GPLv3)
Classifier: Operating System :: POSIX :: Linux
Classifier: Programming Language :: Python :: 3
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Classifier: Topic :: System :: Benchmark
Classifier: Topic :: System :: Hardware
Classifier: Topic :: System :: Networking :: Monitoring
Classifier: Topic :: System :: Operating System
Classifier: Topic :: Utilities
