Skip to main content

An advanced system monitor utility written in Python and Qt

Project description

Obserware

An advanced system monitor utility written in Python and Qt

About

Obserware makes monitoring of advanced metrics accessible with the use of interactive graphs and charts. It is built on free and open-source technologies such as Python, Psutil, PyCPUinfo, Distro and Qt5. With the use of the utility, you can monitor

  • Advanced overview of the system health by monitoring CPU usage, memory utilization and swapping rate
  • Granular counts of context switches, system calls and interrupts of both natures, software and hardware
  • Per-core/per-thread CPU utilization, measured in both stress percentage and active clock speeds
  • Per-core/per-thread CPU state times, measured in both occupancy percentage and duration in seconds
  • Usage/availability information, measured in both occupancy percentage and active size in megabytes
  • Storage counters, measured in unit counts, size in bytes, duration in seconds, merge counts and busy time in seconds
  • Global network statistics gathered from all network interface cards, measured in packet count rate and size rate
  • Statistics of uploads and downloads made since boot, measured in packet counts and size in bytes
  • Per-NIC activity, transfer rate in packet counts and bytes, total transmission, dropped transfers and more
  • Per-unit metrics in both, occupancy percentage and active size of physical and logical partitions
  • Static information about mount location, file system, unit name and much more of physical and logical partitions
  • Dynamic listing of processes in process IDs, names, terminal, usernames, states, CPU and memory usage and thread counts
  • Per-process information with process IDs, CPU and memory usage, CPU/thread counts, context switches and more
  • Per-process control with options to kill, resume, terminate or suspend those on demand
  • Static software information on operating system and kernel as well as dependency versions for the application
  • Static hardware information on CPU name, vendor, frequency, available feature flags and more
  • While adapting to the global system-wide theming options on Qt-based desktop environments like KDE Plasma or LXQt

Find it on

  1. PyPI
    PyPI version
  2. Fedora COPR
    Copr build status
  3. Product Hunt
    1. Vote
    2. Review

Installation

For development

Using Poetry

  1. sudo dnf install python3-poetry
  2. git clone https://gitlab.com/t0xic0der/obserware.git
  3. cd obserware
  4. virtualenv venv
  5. source venv/bin/activate
  6. poetry install
  7. deactivate

For consumption

From Fedora COPR

  1. sudo dnf install dnf-plugins-core -y
  2. sudo dnf copr enable t0xic0der/obserware -y
  3. sudo dnf install obserware -y

From PyPI

  1. virtualenv venv
  2. source venv/bin/activate
  3. pip3 install obserware
  4. deactivate

Usage

For development

If installed via Poetry

  1. source venv/bin/activate
  2. obserware
  3. deactivate

For consumption

If installed from Fedora COPR

  1. Either, run obserware in a terminal
  2. Or, invoke the created desktop entry

If installed from PyPI

  1. source venv/bin/activate
  2. obserware
  3. deactivate

Screenshots

  1. Windows
    1. Performance tabscreen
      Find here https://gitlab.com/t0xic0der/obserware/-/blob/main/screenshots/obsr_mainperf.png
    2. Processes tabscreen
      Find here https://gitlab.com/t0xic0der/obserware/-/blob/main/screenshots/obsr_mainproc.png
    3. Connections tabscreen
      Find here https://gitlab.com/t0xic0der/obserware/-/blob/main/screenshots/obsr_mainproc.png
    4. Partitions tabscreen
      Find here https://gitlab.com/t0xic0der/obserware/-/blob/main/screenshots/obsr_mainpart.png
    5. Information tabscreen
      Find here https://gitlab.com/t0xic0der/obserware/-/blob/main/screenshots/obsr_maininfo.png
    6. Contribute tabscreen
      Find here https://gitlab.com/t0xic0der/obserware/-/blob/main/screenshots/obsr_maincntb.png
  2. Dialogs
    1. CPU cycles dialog
      Find here https://gitlab.com/t0xic0der/obserware/-/blob/main/screenshots/obsr_cyclwind.png
    2. CPU times dialog
      Find here https://gitlab.com/t0xic0der/obserware/-/blob/main/screenshots/obsr_cputwind.png
    3. Process information dialog
      Find here https://gitlab.com/t0xic0der/obserware/-/blob/main/screenshots/obsr_procwind.png

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

obserware-0.2.8.tar.gz (1.3 MB view details)

Uploaded Source

Built Distribution

obserware-0.2.8-py3-none-any.whl (1.4 MB view details)

Uploaded Python 3

File details

Details for the file obserware-0.2.8.tar.gz.

File metadata

  • Download URL: obserware-0.2.8.tar.gz
  • Upload date:
  • Size: 1.3 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.1.8 CPython/3.10.2 Linux/5.15.16-200.fc35.x86_64

File hashes

Hashes for obserware-0.2.8.tar.gz
Algorithm Hash digest
SHA256 7b5e0ab33b8f86b4def06bf312c99865efb72eabe4ba26a8508fc729d76048fb
MD5 43440bf8bb715ba1b414b93a22c0892f
BLAKE2b-256 0ba65cd707feef53708188f3dea8fb965768c891c53e7133b1800a47892fa0b9

See more details on using hashes here.

File details

Details for the file obserware-0.2.8-py3-none-any.whl.

File metadata

  • Download URL: obserware-0.2.8-py3-none-any.whl
  • Upload date:
  • Size: 1.4 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.1.8 CPython/3.10.2 Linux/5.15.16-200.fc35.x86_64

File hashes

Hashes for obserware-0.2.8-py3-none-any.whl
Algorithm Hash digest
SHA256 9038fccbfb4cf5e6681f6e987e7fd9921f37407799c305faea5cb0b4bebf8200
MD5 ece4693820f2cd66562b6bf049fa2aa4
BLAKE2b-256 ed7ee16ba3b642adfb2a18038153cf8dc103fc88c55fea59f249e44d54f263bf

See more details on using hashes here.

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