Advanced system monitoring and analyzer toolkit for Python
Project description
๐ SmartSys Analyzer
SmartSys Analyzer is a powerful and stylish Python system monitoring toolkit. It tracks CPU, memory, and disk usage with configurable thresholds, colorful logging, and intelligent alerts โ built with โค๏ธ for developers, sysadmins, and enthusiasts.
โจ Features
- โ Configurable resource thresholds (CPU, Memory, Disk)
- โ Pydantic-based validation models
- โ Colored terminal logs (via Colorama + Rich)
- โ JSON config loader and saver
- โ Cross-platform OS detection
- โ Internet connectivity checker
- โ Alert system (text + optional sound)
- โ Language selection (EN, ID, ZH-Hans, AR)
- โ Retry decorators and smart utilities
- โ Fully PyPI-packaged and documented
๐ฆ Requirements
- Python 3.8+
pydanticcoloramarichplaysoundpsutil
Install them with:
pip install -r requirements.txt
Or install directly when installing the package:
bash
Salin
Edit
pip install smartsys-analyzer
๐ง Installation
bash
Salin
Edit
pip install smartsys-analyzer
To install from source:
bash
Salin
Edit
git clone https://github.com/yourusername/smartsys-analyzer.git
cd smartsys-analyzer
pip install .
## Usage Example
๐ Usage
Basic Usage
python
from smartsys_analyzer.core import SystemAnalyzer
from smartsys_analyzer.config import show_config_summary
analyzer = SystemAnalyzer()
analyzer.run()
show_config_summary()
With Threshold Customization:
from smartsys_analyzer.core import SystemAnalyzer
from smartsys_analyzer.schemas import ThresholdConfig
config = ThresholdConfig(cpu=60, memory=70, disk=80)
analyzer = SystemAnalyzer(threshold=config)
analyzer.run()
๐ Example Output
[INFO] CPU: 45.5% | MEM: 68.2% | DISK: 72.9%
[CRITICAL] Memory usage is 92.0%, which is above the threshold of 75%!
[WARNING] Disk usage is 86.3%, which is above the threshold of 85%!
๐ Project Structure:
smartsys_analyzer/
โโโ core.py
โโโ config.py
โโโ utils.py
โโโ schemas.py
โโโ __init__.py
โโโ requirements.txt
โโโ README.md
## Languages
๐ค Supported Languages
English (en)
Bahasa Indonesia (id)
Simplified Chinese (zh-hans)
Arabic (ar)
Change language using:
from smartsys_analyzer.config import set_language
set_language("id") # or "en", "zh-hans", "ar"
๐งช Running Locally:
python -m smartsys_analyzer.core
or test each module:
python smartsys_analyzer/utils.py
๐ Changelog
v1.0.0
Initial release with core modules
Advanced logging and alerts
Configurable thresholds and runtime flags
๐ Documentation
Work in progress at:
๐ https://github.com/yourusername/smartsys-analyzer/wiki
๐ค Contributing
Pull requests are welcome! For major changes, please open an issue first.
Fork the repository
Create your feature branch (git checkout -b new-feature)
Commit your changes (git commit -am 'Add cool feature')
Push to the branch (git push origin new-feature)
Create a new Pull Request
๐ License
This project is licensed under the MIT License. See LICENSE file for details.
โค๏ธ Credits
Built using:
Pydantic
Colorama
Rich
psutil
๐ง Related Projects
supermonitor
sysdash
psutil
๐บ๏ธ Roadmap
YAML config support
Web dashboard version
Auto-email alerting system
CLI interface (smartsys-cli)
System tray integration (Windows/Mac)
๐ Contact
For questions or suggestions:
๐ซ Email: aeden6877@gmail.com
๐ GitHub: EdenGithhub
๐ Thank You
If you like this project, consider giving it a โญ on GitHub!
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file smartsys_analyzer-1.0.0.tar.gz.
File metadata
- Download URL: smartsys_analyzer-1.0.0.tar.gz
- Upload date:
- Size: 12.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
13e48d1b38b100ac5a7a772d3cc9d9b14ddb6f65a4755f8549ae0a0620e18b4a
|
|
| MD5 |
5dc45f85f5fd70dd4130e7436bb1c0e7
|
|
| BLAKE2b-256 |
14d26fc905c77cde70d62a9333f1ba2d37f4d24717faeba5aa6e549dc5145991
|
File details
Details for the file smartsys_analyzer-1.0.0-py3-none-any.whl.
File metadata
- Download URL: smartsys_analyzer-1.0.0-py3-none-any.whl
- Upload date:
- Size: 11.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f953c7e1866a095c9d66e31aeb0f9bf8911ce986c66ab39e17344f52187989c9
|
|
| MD5 |
195282f74c960ac2c74a134301b2c08a
|
|
| BLAKE2b-256 |
09cec5fa6016fafeeee6efe98a6a78aca8d5481c952bea00fe546e6a9c186d0f
|