Expand description
Configuration module for Zentinel proxy
This module provides configuration parsing, validation, and hot-reload support with a focus on safety, security-first defaults, and operational clarity.
§Module Organization
server: Server and listener configurationroutes: Route configuration and match conditionsupstreams: Upstream backend configurationagents: External processing agent configurationwaf: WAF (Web Application Firewall) configurationobservability: Metrics, logging, and tracing configurationfilters: Filter types for request/response processingvalidation: Configuration validation functionskdl: KDL format parsingdefaults: Default embedded configurationmulti_file: Multi-file configuration loading
Re-exports§
pub use agents::AgentConfig;pub use agents::AgentEvent;pub use agents::AgentPoolConfig;pub use agents::AgentTlsConfig;pub use agents::AgentTransport;pub use agents::AgentType;pub use agents::BodyStreamingMode;pub use agents::LoadBalanceStrategy;pub use filters::Filter;pub use filters::FilterConfig;pub use filters::PathModifier;pub use filters::RedirectFilter;pub use filters::UrlRewriteFilter;pub use multi_file::ConfigDirectory;pub use multi_file::MultiFileLoader;pub use namespace::ExportConfig;pub use namespace::NamespaceConfig;pub use namespace::ServiceConfig;pub use flatten::FlattenedConfig;pub use resolution::ResourceResolver;pub use observability::AccessLogConfig;pub use observability::AccessLogFields;pub use observability::AuditLogConfig;pub use observability::ErrorLogConfig;pub use observability::LoggingConfig;pub use observability::MetricsConfig;pub use observability::ObservabilityConfig;pub use observability::TracingBackend;pub use observability::TracingConfig;pub use routes::ApiSchemaConfig;pub use routes::BuiltinHandler;pub use routes::CacheBackend;pub use routes::CacheStorageConfig;pub use routes::ErrorFormat;pub use routes::ErrorPage;pub use routes::ErrorPageConfig;pub use routes::FailureMode;pub use routes::FallbackConfig;pub use routes::FallbackTriggers;pub use routes::FallbackUpstream;pub use routes::GuardrailAction;pub use routes::GuardrailFailureMode;pub use routes::GuardrailsConfig;pub use routes::HeaderModifications;pub use routes::InferenceConfig;pub use routes::InferenceProvider;pub use routes::InferenceRouting;pub use routes::InferenceRoutingStrategy;pub use routes::MatchCondition;pub use routes::ModelRoutingConfig;pub use routes::ModelUpstreamMapping;pub use routes::PiiAction;pub use routes::PiiDetectionConfig;pub use routes::PromptInjectionConfig;pub use routes::RateLimitPolicy;pub use routes::RouteCacheConfig;pub use routes::RouteConfig;pub use routes::RoutePolicies;pub use routes::ServiceType;pub use routes::StaticFileConfig;pub use routes::TokenEstimation;pub use routes::TokenRateLimit;pub use server::ListenerConfig;pub use server::ListenerProtocol;pub use server::ServerConfig;pub use server::SniCertificate;pub use server::TlsConfig;pub use upstreams::ConnectionPoolConfig;pub use upstreams::HealthCheck;pub use upstreams::HttpVersionConfig;pub use upstreams::UpstreamConfig;pub use upstreams::UpstreamPeer;pub use upstreams::UpstreamTarget;pub use upstreams::UpstreamTimeouts;pub use upstreams::UpstreamTlsConfig;pub use validation::ValidationContext;pub use waf::BodyInspectionPolicy;pub use waf::ExclusionScope;pub use waf::RuleExclusion;pub use waf::WafConfig;pub use waf::WafEngine;pub use waf::WafMode;pub use waf::WafRuleset;pub use filters::*;
Modules§
- agents
- Agent configuration types
- filters
- Filter chain configuration for Zentinel proxy
- flatten
- Flattened configuration for runtime consumption.
- multi_
file - Multi-file configuration support for Zentinel.
- namespace
- Namespace and service configuration for hierarchical organization.
- observability
- Observability configuration types
- resolution
- Resource resolution with scoped lookups.
- routes
- Route configuration types
- server
- Server and listener configuration types
- upstreams
- Upstream configuration types
- validation
- Configuration validation functions
- waf
- WAF (Web Application Firewall) configuration types
Structs§
- Config
- Main configuration structure for Zentinel proxy
- Cost
Attribution Config - Cost attribution configuration for tracking inference costs.
- Model
Pricing - Per-model pricing configuration.
- Token
Budget Config - Token budget configuration for per-tenant usage tracking.
Enums§
- Budget
Period - Budget period defining when the budget resets.
- Load
Balancing Algorithm - Load balancing algorithm
- Schema
Compatibility - Schema version compatibility result
- Trace
IdFormat - Trace ID format selection.
Constants§
- CURRENT_
SCHEMA_ VERSION - Current schema version supported by this build
- DEFAULT_
CONFIG_ KDL - Embedded default configuration in KDL format
- MIN_
SCHEMA_ VERSION - Minimum schema version supported by this build
Functions§
- check_
schema_ compatibility - Check schema version compatibility
- create_
default_ config - Create the default embedded configuration programmatically. This serves as a fallback if KDL parsing fails for any reason.