diff --git a/doc/config/veilid-server-config.md b/doc/config/veilid-server-config.md index 3aa78f55..be37c7ed 100644 --- a/doc/config/veilid-server-config.md +++ b/doc/config/veilid-server-config.md @@ -14,9 +14,9 @@ and the `veilid-server.conf` file. ## Global Directives -| Directive | Description | -|-------------------------------|---------------------------------------------------| -| [daemon](#daemon) | Run `veilid-server` in the background | +| Directive | Description | +|-------------------------------|-----------------------------------------| +| [daemon](#daemon) | Run `veilid-server` in the background | | [client\_api](#client_api) || | [auto\_attach](#auto_attach) || | [logging](#logging) || @@ -39,16 +39,16 @@ client_api: listen_address: 'localhost:5959' ``` -| Parameter | Description | -|-------------------------------------|-------------| -| [enabled](#enabled) || -| [listen\_address](#listen_address) || +| Parameter | Description | +|-----------------------------------------------|-------------| +| [enabled](#client_apienabled) || +| [listen\_address](#client_apilisten_address) || -#### enabled +#### client\_api:enabled **TODO** -#### listen\_address +#### client\_api:listen\_address **TODO** @@ -82,6 +82,57 @@ logging: grpc_endpoint: 'localhost:4317' ``` +| Parameter | Description | +|-------------------------------|-------------| +| [system](#loggingsystem) || +| [terminal](#loggingterminal) || +| [file](#loggingfile) || +| [api](#loggingapi) || +| [otlp](#loggingotlp) || + +#### logging:system + +```yaml +system: + enabled: false + level: 'info' +``` + +#### logging:terminal + +```yaml +terminal: + enabled: true + level: 'info' +``` + +#### logging:file + +```yaml +file: + enabled: false + path: '' + append: true + level: 'info' +``` + +#### logging:api + +```yaml +api: + enabled: true + level: 'info' +``` + +#### logging:otlp + +```yaml +otlp: + enabled: false + level: 'trace' + grpc_endpoint: 'localhost:4317' +``` + ### testing ```yaml @@ -91,104 +142,166 @@ testing: ### core +| Parameter | Description | +|-------------------------------------------|-------------| +| [protected\_store](#coreprotected_store) || +| [table\_store](#coretable_store) || +| [block\_store](#block_store) || +| [network](#corenetwork) || + +#### core:protected\_store + ```yaml -core: - protected_store: - allow_insecure_fallback: true - always_use_insecure_storage: true - insecure_fallback_directory: '%INSECURE_FALLBACK_DIRECTORY%' - delete: false - table_store: - directory: '%TABLE_STORE_DIRECTORY%' - delete: false - block_store: - directory: '%BLOCK_STORE_DIRECTORY%' - delete: false - network: - connection_initial_timeout_ms: 2000 - connection_inactivity_timeout_ms: 60000 - max_connections_per_ip4: 32 - max_connections_per_ip6_prefix: 32 - max_connections_per_ip6_prefix_size: 56 - max_connection_frequency_per_min: 128 - client_whitelist_timeout_ms: 300000 - reverse_connection_receipt_time_ms: 5000 - hole_punch_receipt_time_ms: 5000 - node_id: '' - node_id_secret: '' - bootstrap: ['bootstrap.dev.veilid.net'] - bootstrap_nodes: [] - routing_table: - limit_over_attached: 64 - limit_fully_attached: 32 - limit_attached_strong: 16 - limit_attached_good: 8 - limit_attached_weak: 4 - rpc: - concurrency: 0 - queue_size: 1024 - max_timestamp_behind_ms: 10000 - max_timestamp_ahead_ms: 10000 - timeout_ms: 10000 - max_route_hop_count: 7 - dht: - resolve_node_timeout: - resolve_node_count: 20 - resolve_node_fanout: 3 - max_find_node_count: 20 - get_value_timeout: - get_value_count: 20 - get_value_fanout: 3 - set_value_timeout: - set_value_count: 20 - set_value_fanout: 5 - min_peer_count: 20 - min_peer_refresh_time_ms: 2000 - validate_dial_info_receipt_time_ms: 2000 - upnp: true - natpmp: false - detect_address_changes: true - enable_local_peer_scope: false - restricted_nat_retries: 0 - tls: - certificate_path: '%CERTIFICATE_PATH%' - private_key_path: '%PRIVATE_KEY_PATH%' - connection_initial_timeout_ms: 2000 - application: - https: - enabled: false - listen_address: ':5150' - path: 'app' - # url: 'https://localhost:5150' - http: - enabled: false - listen_address: ':5150' - path: 'app' - # url: 'http://localhost:5150' - protocol: - udp: - enabled: true - socket_pool_size: 0 - listen_address: ':5150' - # public_address: '' - tcp: - connect: true - listen: true - max_connections: 32 - listen_address: ':5150' - #'public_address: '' - ws: - connect: true - listen: true - max_connections: 16 - listen_address: ':5150' - path: 'ws' - # url: 'ws://localhost:5150/ws' - wss: - connect: true - listen: false - max_connections: 16 - listen_address: ':5150' - path: 'ws' - # url: '' +protected_store: + allow_insecure_fallback: true + always_use_insecure_storage: true + insecure_fallback_directory: '%INSECURE_FALLBACK_DIRECTORY%' + delete: false +``` + +#### core:table\_store + +```yaml +table_store: + directory: '%TABLE_STORE_DIRECTORY%' + delete: false +``` + +#### core:block\_store + +```yaml +block_store: + directory: '%BLOCK_STORE_DIRECTORY%' + delete: false +``` + +#### core:network + +```yaml +network: + connection_initial_timeout_ms: 2000 + connection_inactivity_timeout_ms: 60000 + max_connections_per_ip4: 32 + max_connections_per_ip6_prefix: 32 + max_connections_per_ip6_prefix_size: 56 + max_connection_frequency_per_min: 128 + client_whitelist_timeout_ms: 300000 + reverse_connection_receipt_time_ms: 5000 + hole_punch_receipt_time_ms: 5000 + node_id: '' + node_id_secret: '' + bootstrap: ['bootstrap.dev.veilid.net'] + bootstrap_nodes: [] + upnp: true + natpmp: false + detect_address_changes: true + enable_local_peer_scope: false + restricted_nat_retries: 0 +``` + +| Parameter | Description | +|---------------------------------------------|-------------| +| [routing\_table](#corenetworkrouting_table) || +| [rpc](#corenetworkrpc) || +| [dht](#corenetworkdht) || +| [tls](#corenetworktls) || +| [application](#corenetworkapplication) || +| [protocol](#corenetworkprotocol) || + +#### core:network:routing\_table + +```yaml +routing_table: + limit_over_attached: 64 + limit_fully_attached: 32 + limit_attached_strong: 16 + limit_attached_good: 8 + limit_attached_weak: 4 +``` + +#### core:network:rpc + +```yaml +rpc: + concurrency: 0 + queue_size: 1024 + max_timestamp_behind_ms: 10000 + max_timestamp_ahead_ms: 10000 + timeout_ms: 10000 + max_route_hop_count: 7 +``` + +#### core:network:dht + +```yaml +dht: + resolve_node_timeout: + resolve_node_count: 20 + resolve_node_fanout: 3 + max_find_node_count: 20 + get_value_timeout: + get_value_count: 20 + get_value_fanout: 3 + set_value_timeout: + set_value_count: 20 + set_value_fanout: 5 + min_peer_count: 20 + min_peer_refresh_time_ms: 2000 + validate_dial_info_receipt_time_ms: 2000 +``` + +#### core:network:tls + +```yaml +tls: + certificate_path: '%CERTIFICATE_PATH%' + private_key_path: '%PRIVATE_KEY_PATH%' + connection_initial_timeout_ms: 2000 +``` + +#### core:network:application + +```yaml +application: + https: + enabled: false + listen_address: ':5150' + path: 'app' + # url: 'https://localhost:5150' + http: + enabled: false + listen_address: ':5150' + path: 'app' + # url: 'http://localhost:5150' +``` + +#### core:network:protocol + +```yaml +protocol: + udp: + enabled: true + socket_pool_size: 0 + listen_address: ':5150' + # public_address: '' + tcp: + connect: true + listen: true + max_connections: 32 + listen_address: ':5150' + #'public_address: '' + ws: + connect: true + listen: true + max_connections: 16 + listen_address: ':5150' + path: 'ws' + # url: 'ws://localhost:5150/ws' + wss: + connect: true + listen: false + max_connections: 16 + listen_address: ':5150' + path: 'ws' + # url: '' ```