Skip to main content

Linux system information library

Project description

sysutil-lib

  • Linux system information library

Importation

import sysutil

Data structures

ProcessorUsage

class ProcessorUsage:
    total: float
    user: float
    nice: float
    system: float
    idle: float
    iowait: float
    interrupt: float
    soft_interrupt: float
  • data structure which encloses the different parameters relative to processor usage

CpuUsage

class CpuUsage:
    average: ProcessorUsage
    processors: [ProcessorUsage]
  • contains the average CPU usage, and the specific usage for each processor

Cpu

class Cpu:
    modelName: str
    cores: int
    threads: int
    dies: int
    governors: [str]
    maxFrequencyMHz: float
    clockBoost: bool
    architecture: str
    byteOrder: str
  • contains base information relative to the CPU

SchedulerPolicy

class SchedulerPolicy:
    name: str
    scalingGovernor: str
    scalingDriver: str
    minimumScalingMHz: float
    maximumScalingMHz: float
  • contains scheduler information relative to a processor in your system

RamSize

class RamSize:
    gb: float
    gib: float
  • contains total ram size, both in GB (1000^3 bytes) and GiB (1024^3 bytes)

NetworkRate

class NetworkRate:
    download: float
    upload: float
  • contains total upload and download network rate (in bytes)

TemperatureSensor

class TemperatureSensor:
    label: str
    temperature: float
  • contains sensor name (label) and the recorded temperature

Battery

class Battery:
    capacity: int
    status: str
  • contains capacity and status of battery

VramSize

class VramSize:
    gb: float
    gib: float
  • contains total gpu's vram size, both in GB (1000^3 bytes) and GiB (1024^3 bytes)

RouteType

class RouteType:
    TCP = 'tcp'
    TCP6 = 'tcp6'
    UDP = 'udp'
    UDP6 = 'udp6'

NetworkRoute

class NetworkRoute:
    routeType: str
    localAddress: str
    localPort: int
    remoteAddress: str
    remotePort: int
  • represents a network route

Functions

Functions

def cpuUsage() -> CpuUsage
  • returns the cpu usage, both average and processor-wise, all the values are percentage
def cpuFrequency() -> float
  • returns CPU frequency in MHz
def ramUsage() -> float
  • returns ram usage percentage
def networkRate() -> NetworkRate
  • returns network rate (download and upload), expressed in bytes
def temperatureSensors() -> [TemperatureSensor]
  • returns every temperature sensor in TemperatureSensor format
def cpuInfo() -> Cpu
  • returns the cpu base information, enclosed in the Cpu data structure
def ramSize() -> RamSize
  • returns ram size as specified in the RamSize data structure
def schedulerInfo() -> [SchedulerPolicy]
  • returns scheduler information for each processor
def gpuUsage() -> float
  • returns gpu usage percentage
  • yet tested only on AMD 7000 series GPUs, returns None in case it's not capable to retrieve information
def batteryInfo() -> Battery 
  • returns battery status and capacity
def vramSize() -> VramSize
  • returns vram size as specified in the VramSize data structure
def vramUsage() -> float
  • returns vram usage percentage
def networkRoutes() -> [NetworkRoute]
  • returns a list containing each internal network route

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

sysutil-lib-0.2.2.tar.gz (17.2 kB view hashes)

Uploaded Source

Built Distribution

sysutil_lib-0.2.2-py3-none-any.whl (17.7 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