Standardized interface and data structures for infrastructure monitoring plugins in the cjm-plugin-system ecosystem.
Project description
cjm-infra-plugin-system
Install
pip install cjm_infra_plugin_system
Project Structure
nbs/
├── core.ipynb # Core data structures for infrastructure monitoring
└── plugin_interface.ipynb # Domain-specific plugin interface for system monitoring
Total: 2 notebooks
Module Dependencies
graph LR
core[core<br/>core]
plugin_interface[plugin_interface<br/>plugin_interface]
plugin_interface --> core
1 cross-module dependencies detected
CLI Reference
No CLI commands found in this project.
Module Overview
Detailed documentation for each module in the project:
core (core.ipynb)
Core data structures for infrastructure monitoring
Import
from cjm_infra_plugin_system.core import (
SystemStats
)
Classes
@dataclass
class SystemStats:
"Standardized snapshot of system resources."
cpu_percent: float = 0.0 # Overall CPU utilization percentage
memory_used_mb: float = 0.0 # Currently used system RAM in MB
memory_total_mb: float = 0.0 # Total system RAM in MB
memory_available_mb: float = 0.0 # Available system RAM in MB
gpu_type: str = 'None' # GPU vendor: 'NVIDIA', 'AMD', 'Intel', 'None'
gpu_free_memory_mb: float = 0.0 # Free GPU memory in MB (sum of all visible devices)
gpu_total_memory_mb: float = 0.0 # Total GPU memory in MB
gpu_used_memory_mb: float = 0.0 # Used GPU memory in MB
gpu_load_percent: float = 0.0 # GPU compute utilization percentage
details: Dict[str, Any] = field(...) # Per-device stats, temperatures, etc.
def to_dict(self) -> Dict[str, Any]: # Dictionary representation for JSON serialization
"Convert to dictionary for JSON serialization."
plugin_interface (plugin_interface.ipynb)
Domain-specific plugin interface for system monitoring
Import
from cjm_infra_plugin_system.plugin_interface import (
MonitorPlugin
)
Classes
class MonitorPlugin(PluginInterface):
"Abstract base class for hardware monitoring plugins."
def execute(
self,
command: str = "get_system_status", # Command to execute
**kwargs
) -> Dict[str, Any]: # SystemStats as dictionary
"Gather current system statistics and return as dictionary."
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 cjm_infra_plugin_system-0.0.2.tar.gz.
File metadata
- Download URL: cjm_infra_plugin_system-0.0.2.tar.gz
- Upload date:
- Size: 8.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
0999210fc0bcdc7b8c78d134f8a22a8bd6e9e206ef2c25899e01283ce8b4e88d
|
|
| MD5 |
79b34ab09eca205d41634469b4064742
|
|
| BLAKE2b-256 |
b568990cf8c379881eeed88670816c2c92b7d68acc3da9f3b50876faf517ad1c
|
File details
Details for the file cjm_infra_plugin_system-0.0.2-py3-none-any.whl.
File metadata
- Download URL: cjm_infra_plugin_system-0.0.2-py3-none-any.whl
- Upload date:
- Size: 9.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a3119601ff761e1deeca70710a840998a17b64d19ab73e042ea1af016a81129a
|
|
| MD5 |
9110ff2a6dd2a32a26d9bc22f9dbb874
|
|
| BLAKE2b-256 |
ecade8d1a3e479b15a0659abcbb6a4142f0e778555753e479f4fd740fd2db6dd
|