You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The Settings Service is a core component of the PICCOLO framework that provides centralized configuration management and metrics filtering capabilities.
3
+
The Settings Service is a core component of the PICCOLO framework that provides centralized configuration management and metrics filtering capabilities for vehicle service orchestration.
4
4
5
5
## Features
6
6
7
7
-**Configuration Management**: Create, read, update, and delete YAML/JSON configurations
8
8
-**Schema Validation**: Validate configurations against JSON schemas
9
9
-**Change History**: Track configuration changes with rollback capabilities
10
-
-**Metrics Filtering**: Filter and serve monitoring metrics from ETCD
10
+
-**Metrics Retrieval**: Retrieve and filter monitoring metrics from ETCD (NodeInfo, ContainerInfo, SocInfo, BoardInfo)
11
11
-**Multiple Interfaces**: REST API and CLI interfaces
12
-
-**ETCD Integration**: Uses ETCD as the backend storage
12
+
-**ETCD Integration**: Direct integration with monitoring ETCD storage for real-time vehicle orchestration data
13
13
14
14
## Architecture
15
15
@@ -18,22 +18,22 @@ The Settings Service consists of the following modules:
18
18
-`settings_core`: Service initialization and coordination
19
19
-`settings_config`: Configuration management with YAML/JSON support
20
20
-`settings_history`: Change history tracking and rollback
21
-
-`settings_monitoring`: Metrics data filtering from ETCD
22
-
-`settings_storage`: ETCD client for data persistence
23
-
-`settings_api`: REST API server
24
-
-`settings_cli`: Command-line interface
25
-
-`settings_utils`: Common utilities
21
+
-`settings_monitoring`: High-level metrics data retrieval and filtering with caching
22
+
-`monitoring_etcd`: Direct ETCD operations for monitoring data (`/piccolo/metrics/`, `/piccolo/logs/`)
23
+
-`monitoring_types`: Type definitions for vehicle orchestration metrics (NodeInfo, SocInfo, BoardInfo)
24
+
-`settings_storage`: ETCD client for configuration data persistence
25
+
-`settings_api`: REST API server with comprehensive metrics endpoints
26
+
-`settings_cli`: Command-line interface with interactive shell
27
+
-`settings_utils`: Common utilities (error handling, logging, YAML processing)
26
28
27
29
## Building
28
30
29
-
```bash
30
31
# Build the settings service
31
32
cd src/server/settingsservice
32
33
cargo build
33
34
34
35
# Or build the entire project
35
36
make build
36
-
```
37
37
38
38
## Running
39
39
@@ -74,13 +74,25 @@ The Settings Service provides a comprehensive REST API:
0 commit comments