Skip to main content

Cross-platform system stats made easy

Project description

statz

statz is a cross-platform Python package that fetches real-time system usage and hardware specs — all wrapped in a simple, clean API.

Works on macOS, Linux, and Windows, and handles OS-specific madness under the hood so you don’t have to.

statz logo


✨ Features

  • 📊 Get real-time CPU, RAM, and disk usage
  • 💻 Fetch detailed system specifications (CPU, RAM, OS, etc.)
  • 🧠 Automatically handles platform-specific logic
  • 🧼 Super clean API — just two functions, no fluff

📦 Installation

pip install statz

🗂️ Links

PyPi Project 🐍

Github Repository 🧑‍💻

📝 Changelog

v0.4.0 – Temperatures, Top Processes, and Bug Squashing 🌡️🧪🐞

  • Added temperature monitoring
    • Run stats.get_system_temps() to get a detailed dictionary of sensors

    • Run statz --temp to get temps out in the console like this:

      TEMPERATURE Info:
      Actuator: 31.2°C
      Airflow Left: 39.0°C
      Airflow Right: 39.3°C
      Airport: 39.5°C
      Airport 1: 39.5°C
      Battery 1: 33.4°C
      Battery 2: 33.4°C
      Battery 3: 33.4°C
      CPU Efficiency Core 1: 46.8°C
      CPU Efficiency Core 2: 46.3°C
      CPU Efficiency Core 4: 46.1°C
      CPU Performance Core 1: 2.2°C
      CPU Performance Core 2: 1.5°C
      CPU Performance Core 3: 2.2°C
      CPU Performance Core 4: 1.5°C
      CPU Performance Core 5: 2.2°C
      CPU Performance Core 6: 1.5°C
      CPU Performance Core 7: 2.2°C
      CPU Performance Core 8: 1.5°C
      DCIn Air Flow: 8.3°C
      Drive 0 OOBv3 Absolute Raw A: 34.7°C
      Drive 0 OOBv3 Absolute Raw B: 34.9°C
      Drive 0 OOBv3 Max: 34.9°C
      GPU 1: 47.1°C
      GPU 2: 40.3°C
      GPU 3: 40.4°C
      GPU Heatsink 1: 33.0°C
      NAND: 34.9°C
      NAND CH0 temp: 35.0°C
      PMU tcal: 51.82°C
      etc...
      
  • Added top n processes monitoring
    • Get top n processes using get_top_n_proccesses(n, type) where type = "cpu" or "mem".
    • Run statz --processes --process-count {process count} --process-type {"cpu", "mem"} to get an output like this
      PROCESSES Info:
        Device 1: {'pid': 107, 'name': 'Python', 'usage': 0.0}
        Device 2: {'pid': 383, 'name': 'loginwindow', 'usage': 0.0}
        Device 3: {'pid': 559, 'name': 'distnoted', 'usage': 0.0}
        Device 4: {'pid': 560, 'name': 'cfprefsd', 'usage': 0.0}
        Device 5: {'pid': 563, 'name': 'UserEventAgent', 'usage': 0.0}
      
  • Squashed some bugs
    • Fixed storage calculation bugs on macOS and Linux
    • Added better exception handling to the program

📝 Side Note

If you find any errors on Linux, please report them to me with as much detail as possible as I do not have a Linux machine.

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

statz-0.4.0.tar.gz (16.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

statz-0.4.0-py3-none-any.whl (17.8 kB view details)

Uploaded Python 3

File details

Details for the file statz-0.4.0.tar.gz.

File metadata

  • Download URL: statz-0.4.0.tar.gz
  • Upload date:
  • Size: 16.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.5

File hashes

Hashes for statz-0.4.0.tar.gz
Algorithm Hash digest
SHA256 2746ca72c016e807e6ba31a8ae6a70a6a78951256c6cfee059529b14393ea7dd
MD5 4344d879d98c477f7ee8c9b4564e4013
BLAKE2b-256 1f45c323d6a5283f776f5898f267423ff4f9c0f721e16410f6fbbad3558677f8

See more details on using hashes here.

File details

Details for the file statz-0.4.0-py3-none-any.whl.

File metadata

  • Download URL: statz-0.4.0-py3-none-any.whl
  • Upload date:
  • Size: 17.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.5

File hashes

Hashes for statz-0.4.0-py3-none-any.whl
Algorithm Hash digest
SHA256 9eeed4e1c5dd0550892d634837af4f11f65c1c976189649f39a76906cd865cb5
MD5 e1d1179e07fd8ce9a57df88f4b3b9f8f
BLAKE2b-256 65ae7bd2f64800089c4e1786969ccbda5a82e41c6d5affa7cdea7691264231d9

See more details on using hashes here.

Supported by

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