Expand description
§Node Configuration
Production-grade configuration management with:
- Environment variable support (12-factor app)
- Configuration file loading (YAML/TOML)
- Comprehensive validation
- Sensible defaults
§Environment Variables
| Variable | Description | Default |
|---|---|---|
GUTS_API_ADDR | HTTP API address | 127.0.0.1:8080 |
GUTS_P2P_ADDR | P2P listen address | 0.0.0.0:9000 |
GUTS_METRICS_ADDR | Metrics endpoint | 0.0.0.0:9090 |
GUTS_LOG_LEVEL | Log level | info |
GUTS_LOG_FORMAT | Log format (json/pretty) | json |
GUTS_PRIVATE_KEY | Ed25519 private key (hex) | required for P2P |
GUTS_DATA_DIR | Data directory | ./data |
§Usage
ⓘ
use guts_node::config::NodeConfig;
let config = NodeConfig::from_env().expect("Invalid configuration");
config.validate_config().expect("Configuration validation failed");Structs§
- ApiConfig
- API server configuration.
- Circuit
Breaker Config - Circuit breaker configuration.
- Config
- Legacy configuration for backwards compatibility.
- Consensus
Config - Consensus configuration.
- Logging
Config - Logging configuration.
- Metrics
Config - Metrics configuration.
- Node
Config - Main node configuration.
- P2pConfig
- P2P network configuration.
- Peers
- Peer addresses for local mode.
- Resilience
Config - Resilience configuration.
- Retry
Config - Retry configuration.
- Storage
Config - Storage configuration.
Enums§
- Config
Error - Configuration validation errors.