From the panel site
This commit is contained in:
parent
d684ca74fb
commit
2fc04bcfac
1194 changed files with 154606 additions and 13040 deletions
|
|
@ -1,117 +0,0 @@
|
|||
# OGP Agent Resource Stats Integration - Implementation Complete
|
||||
|
||||
## Summary
|
||||
|
||||
Successfully integrated the standalone Python collector.py functionality directly into the OGP agents, removing external dependencies and simplifying deployment.
|
||||
|
||||
## What Was Implemented
|
||||
|
||||
### 1. Database Configuration
|
||||
- Added database connection parameters to both Linux and Windows agent config files
|
||||
- Configurable collection frequency (default: 5 minutes)
|
||||
- Uses same database schema as original collector.py
|
||||
|
||||
### 2. Resource Collection System
|
||||
- **Machine-wide metrics:** CPU, memory, disk, network, load averages
|
||||
- **Process-specific metrics:** Per-game-server process monitoring
|
||||
- **Platform-specific implementations:** Linux (proc filesystem) and Windows (wmic)
|
||||
|
||||
### 3. Automatic Scheduling
|
||||
- Integrated into existing agent scheduler system
|
||||
- No external cron jobs required
|
||||
- Starts/stops with agent automatically
|
||||
|
||||
### 4. Process Detection
|
||||
- Scans agent directory for server subdirectories
|
||||
- Associates running processes with server directories
|
||||
- Collects detailed process metrics (memory, I/O, ports, etc.)
|
||||
|
||||
## Benefits Achieved
|
||||
|
||||
✅ **Removed Python Dependencies**
|
||||
- No more psutil requirement
|
||||
- No more mysql-connector-python requirement
|
||||
- Pure Perl implementation using native system tools
|
||||
|
||||
✅ **Simplified Deployment**
|
||||
- No separate cron job setup needed
|
||||
- Configuration through existing agent config files
|
||||
- Automatic startup with agent
|
||||
|
||||
✅ **Maintained Compatibility**
|
||||
- Uses identical database schema
|
||||
- Produces same data format as collector.py
|
||||
- Existing dashboards continue to work unchanged
|
||||
|
||||
✅ **Cross-Platform Support**
|
||||
- Linux implementation using /proc filesystem
|
||||
- Windows implementation using wmic and native commands
|
||||
- Platform-specific optimizations
|
||||
|
||||
## Files Modified
|
||||
|
||||
### Linux Agent
|
||||
- `_agent-linux/Cfg/Config.pm` - Added database configuration
|
||||
- `_agent-linux/ogp_agent.pl` - Added resource collection system
|
||||
|
||||
### Windows Agent
|
||||
- `_agent-windows/Cfg/Config.pm` - Added database configuration
|
||||
- `_agent-windows/ogp_agent.pl` - Added resource collection system
|
||||
|
||||
## Database Tables Used
|
||||
- `gsp_machines` - Machine catalog
|
||||
- `gsp_machine_samples` - System-wide metrics
|
||||
- `gsp_process_samples` - Per-process metrics
|
||||
|
||||
## Configuration Required
|
||||
|
||||
### 1. Install Perl Database Modules
|
||||
```bash
|
||||
# Ubuntu/Debian
|
||||
sudo apt-get install libdbi-perl libdbd-mysql-perl
|
||||
|
||||
# CentOS/RHEL
|
||||
sudo yum install perl-DBI perl-DBD-MySQL
|
||||
```
|
||||
|
||||
### 2. Update Agent Configuration
|
||||
Add to both `_agent-linux/Cfg/Config.pm` and `_agent-windows/Cfg/Config.pm`:
|
||||
|
||||
```perl
|
||||
# Resource stats database configuration
|
||||
stats_db_host => 'your_mysql_host',
|
||||
stats_db_user => 'your_db_user',
|
||||
stats_db_pass => 'your_db_password',
|
||||
stats_db_name => 'your_panel_database',
|
||||
stats_table_prefix => 'gsp_',
|
||||
stats_frequency_minutes => '5',
|
||||
```
|
||||
|
||||
### 3. Create Database Tables
|
||||
Run the SQL schema from `modules/resource_stats/mysql_query.sql`
|
||||
|
||||
### 4. Restart OGP Agents
|
||||
The resource collection will start automatically with the agents.
|
||||
|
||||
## Migration Steps
|
||||
|
||||
1. **Stop existing collector.py cron jobs**
|
||||
2. **Install required Perl modules** on agent machines
|
||||
3. **Update agent configurations** with database details
|
||||
4. **Restart OGP agents**
|
||||
5. **Verify data collection** in database
|
||||
6. **Remove collector.py and Python dependencies**
|
||||
|
||||
## Validation
|
||||
|
||||
The implementation has been tested and verified:
|
||||
- ✅ Both Linux and Windows agents compile without errors
|
||||
- ✅ Database connectivity works correctly
|
||||
- ✅ Data insertion functions properly
|
||||
- ✅ System resource collection functions work
|
||||
- ✅ Process detection logic functions
|
||||
- ✅ Scheduler integration is successful
|
||||
|
||||
## Result
|
||||
|
||||
The OGP agents now include fully integrated resource monitoring that replaces the standalone Python collector.py script while maintaining complete compatibility with existing systems and dashboards.
|
||||
Loading…
Add table
Add a link
Reference in a new issue