Configuration¶
Configuration options for customizing kn-sock behavior.
Configuration Files¶
YAML Configuration¶
Create config.yaml:
network:
host: "0.0.0.0"
port: 8080
timeout: 30
ssl:
cert_file: "server.crt"
key_file: "server.key"
ca_file: "ca.crt"
logging:
level: "INFO"
JSON Configuration¶
Create config.json:
{
"network": {
"host": "0.0.0.0",
"port": 8080,
"timeout": 30
},
"ssl": {
"cert_file": "server.crt",
"key_file": "server.key"
}
}
Using Configuration¶
from kn_sock.config import load_config, get_config
# Load configuration file
load_config("config.yaml")
# Get configuration values
host = get_config("network.host", "localhost")
port = get_config("network.port", 8080)
Environment Variables¶
Override configuration with environment variables:
Common Settings¶
| Setting | Description | Default |
|---|---|---|
host | Server bind address | "0.0.0.0" |
port | Server port | 8080 |
timeout | Connection timeout | 30 seconds |
buffer_size | Socket buffer size | 4096 bytes |
ssl.verify | SSL certificate verification | True |
Configuration Hierarchy¶
Settings are applied in order: 1. Built-in defaults 2. Configuration file 3. Environment variables 4. Runtime parameters