pub struct SystemConfig {
pub listener: ListenerConfig,
pub tls: Option<TlsConfig>,
pub http2: Http2Config,
pub timeouts: TimeoutConfig,
pub logging: LoggingConfig,
pub admin: Option<AdminConfig>,
pub config: ConfigSourceConfig,
pub stream: Vec<StreamListenerConfig>,
pub debug: DebugConfig,
}Expand description
Root of system.yaml.
listener: { bind: 0.0.0.0, port: 8080 }
admin:
port: 9090
username: ${ADMIN_USER:-admin}
password: ${ADMIN_PASS}
logging: { level: info, format: json }Fields§
§listener: ListenerConfigData-plane listener; defaults to 0.0.0.0:8080 when the section is omitted.
tls: Option<TlsConfig>TLS termination settings; None (the default) serves plain HTTP.
http2: Http2ConfigHTTP/2 toggle; enabled by default. When on, the listener serves HTTP/2 alongside HTTP/1.1 (ALPN-negotiated over TLS, h2c prior-knowledge over plaintext).
timeouts: TimeoutConfigConnection/read/write/idle timeouts, in seconds.
logging: LoggingConfigLog level and output format; defaults to info / json.
admin: Option<AdminConfig>Admin REST API settings; None (the default) disables the admin server entirely.
config: ConfigSourceConfigWhere gateway config (routes/policies/consumers) is loaded from and where Admin API writes are persisted. Defaults to the local file.
stream: Vec<StreamListenerConfig>L4 (TCP/UDP) stream listeners. Each binds a port at startup and proxies raw bytes to an upstream pool, independent of the HTTP data plane.
debug: DebugConfigPolicy-execution tracing and the plugin sandbox; disabled by default.
Trait Implementations§
Source§impl Clone for SystemConfig
impl Clone for SystemConfig
Source§fn clone(&self) -> SystemConfig
fn clone(&self) -> SystemConfig
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 SystemConfig
impl Debug for SystemConfig
Source§impl<'de> Deserialize<'de> for SystemConfig
impl<'de> Deserialize<'de> for SystemConfig
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Auto Trait Implementations§
impl Freeze for SystemConfig
impl RefUnwindSafe for SystemConfig
impl Send for SystemConfig
impl Sync for SystemConfig
impl Unpin for SystemConfig
impl UnsafeUnpin for SystemConfig
impl UnwindSafe for SystemConfig
Blanket Implementations§
§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
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,
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§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