https://gitlab.com/gridhead/obserware
An advanced system monitor utility written in Python and Qt
https://gitlab.com/gridhead/obserware
Qt monitoring python
Last synced: 9 months ago
JSON representation
An advanced system monitor utility written in Python and Qt
- Host: gitlab.com
- URL: https://gitlab.com/gridhead/obserware
- Owner: gridhead
- License: gpl-3.0+
- Created: 2021-11-21T03:02:45.133Z (over 4 years ago)
- Default Branch: main
- Last Synced: 2025-03-21T05:06:38.934Z (over 1 year ago)
- Topics: Qt, monitoring, python
- Stars: 15
- Forks: 2
- Open Issues: 6
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# 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**](https://pypi.org/project/obserware/)
[](https://pypi.org/project/obserware/)
2. [**Fedora COPR**](https://copr.fedorainfracloud.org/coprs/t0xic0der/obserware/)
[](https://copr.fedorainfracloud.org/coprs/t0xic0der/obserware/package/obserware/)
3. [**Product Hunt**](https://www.producthunt.com/posts/obserware)
1. [Vote](https://www.producthunt.com/posts/obserware?utm_source=badge-featured&utm_medium=badge&utm_souce=badge-obserware)
[](https://www.producthunt.com/posts/obserware?utm_source=badge-featured&utm_medium=badge&utm_souce=badge-obserware)
2. [Review](https://www.producthunt.com/posts/obserware?utm_source=badge-review&utm_medium=badge&utm_souce=badge-obserware#discussion-body)
[](https://www.producthunt.com/posts/obserware?utm_source=badge-review&utm_medium=badge&utm_souce=badge-obserware#discussion-body)
## 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. _Resources tabscreen_
Find [here](https://gitlab.com/t0xic0der/obserware/-/blob/main/screenshots/obsr_mainrsrc.png)

2. _Activities tabscreen_
Find [here](https://gitlab.com/t0xic0der/obserware/-/blob/main/screenshots/obsr_mainproc.png)

3. _Performance tabscreen_
Find [here](https://gitlab.com/t0xic0der/obserware/-/blob/main/screenshots/obsr_mainperf.png)

4. _Connections tabscreen_
Find [here](https://gitlab.com/t0xic0der/obserware/-/blob/main/screenshots/obsr_mainproc.png)

5. _Partitions tabscreen_
Find [here](https://gitlab.com/t0xic0der/obserware/-/blob/main/screenshots/obsr_mainpart.png)

6. _Information tabscreen_
Find [here](https://gitlab.com/t0xic0der/obserware/-/blob/main/screenshots/obsr_maininfo.png)

7. _Contribute tabscreen_
Find [here](https://gitlab.com/t0xic0der/obserware/-/blob/main/screenshots/obsr_maincntb.png)

2. **Dialogs**
1. _Process information dialog_
Find [here](https://gitlab.com/t0xic0der/obserware/-/blob/main/screenshots/obsr_procwind.png)

3. **Logging**
1. _Sample log outputs_
Find [here](https://gitlab.com/t0xic0der/obserware/-/blob/main/screenshots/obsr_logetext.png)
