pub struct ServerConfig {Show 20 fields
pub host: String,
pub port: u16,
pub control_port: u16,
pub log_level: String,
pub upstream_url: String,
pub remote_key: Option<String>,
pub relay_url: String,
pub custom_domain: Option<String>,
pub sticky_ttl_ms: u64,
pub expiry_soon_secs: u64,
pub routing_strategy: RoutingStrategy,
pub request_timeout_secs: u64,
pub rate_limit_rpm: u32,
pub trust_proxy_headers: bool,
pub health_check_enabled: bool,
pub health_check_interval_secs: u64,
pub health_check_timeout_secs: u64,
pub telemetry_url: Option<String>,
pub telemetry_token: Option<String>,
pub instance_name: String,
}Fields§
§host: String§port: u16§control_port: u16Port for the control plane (/status, /use, /health) — sees all accounts.
log_level: String§upstream_url: String§remote_key: Option<String>When set, remote requests must supply this value as x-api-key.
relay_url: StringRelay URL for shunt push / shunt login. Overridable via SHUNT_RELAY_URL.
custom_domain: Option<String>Custom domain for permanent online sharing (e.g. https://shunt.mysite.com).
sticky_ttl_ms: u64Conversation stickiness TTL in milliseconds.
expiry_soon_secs: u64Accounts whose 5h window resets within this many seconds are preferred (“use-it-or-lose-it”).
routing_strategy: RoutingStrategyWhich routing algorithm to use for account selection.
request_timeout_secs: u64Upstream request timeout in seconds.
rate_limit_rpm: u32Per-IP rate limit in requests per minute (0 = disabled, default disabled).
trust_proxy_headers: boolTrust X-Real-IP for per-IP rate limiting (only when behind a trusted proxy).
health_check_enabled: boolEnable periodic health-check probes for all accounts.
health_check_interval_secs: u64Seconds between health-check probe rounds.
health_check_timeout_secs: u64Per-account probe timeout in seconds.
telemetry_url: Option<String>Optional relay-server URL for cross-instance history aggregation.
telemetry_token: Option<String>Bearer token for the relay-server.
instance_name: StringIdentifier for this shunt instance sent in telemetry payloads.
Trait Implementations§
Source§impl Clone for ServerConfig
impl Clone for ServerConfig
Source§fn clone(&self) -> ServerConfig
fn clone(&self) -> ServerConfig
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for ServerConfig
impl Debug for ServerConfig
Auto Trait Implementations§
impl Freeze for ServerConfig
impl RefUnwindSafe for ServerConfig
impl Send for ServerConfig
impl Sync for ServerConfig
impl Unpin for ServerConfig
impl UnsafeUnpin for ServerConfig
impl UnwindSafe for ServerConfig
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more