feat: Implement system health metrics collection and reporting
- Added SystemHealthChecker to collect CPU, memory, disk, and load average metrics. - Implemented methods to retrieve system information from /proc filesystem. - Introduced a new method to collect metrics and return a SystemMetrics struct. - Added tests for metric collection and parsing functions. feat: Enhance agent runtime with state management and health monitoring - Created AgentState struct to manage agent state with RwLock for concurrency. - Refactored agent start logic to initialize cache and start health monitoring. - Implemented connection loop with reconnection logic and health report handling. - Added config update handling with nginx controller integration. feat: Expand master client functionality for bidirectional streaming - Updated MasterClient to support bidirectional streaming for health reports. - Implemented registration logic with the master server. - Added methods for sending messages and managing connection state. feat: Improve nginx configuration management and rendering - Enhanced ConfigManager for atomic symlink swaps and configuration validation. - Implemented ConfigRenderer using Handlebars for dynamic nginx configuration generation. - Added methods for applying, rolling back, and cleaning up configurations. - Introduced tests for configuration rendering and validation. feat: Implement nginx process control with lifecycle management - Added methods to start, stop, reload, and test nginx configurations. - Implemented graceful and immediate stop functionality. - Enhanced error handling and logging for nginx operations. - Added tests for deployment mode parsing and nginx lifecycle management.
This commit is contained in:
@@ -13,3 +13,11 @@ port = 8443
|
||||
[auth]
|
||||
jwt_secret = "development-secret-do-not-use-in-production"
|
||||
jwt_expiration_hours = 24
|
||||
|
||||
[agent]
|
||||
name = "development-agent"
|
||||
data_dir = "./agent-runtime-data"
|
||||
|
||||
[master]
|
||||
url = "http://localhost:8080"
|
||||
token = "token"
|
||||
|
||||
Reference in New Issue
Block a user