Skip to main content

Module command

Module command 

Source
Expand description

Contains all types received by and sent from Sōzu

Modules§

filtered_metrics
Nested message and enum types in FilteredMetrics.
ip_address
Nested message and enum types in IpAddress.
protobuf_endpoint
Nested message and enum types in ProtobufEndpoint.
request
Nested message and enum types in Request.
response_content
Nested message and enum types in ResponseContent.

Structs§

ActivateListener
AddBackend
add a backend
AddCertificate
Add a new TLS certificate to an HTTPs listener
AggregatedMetrics
Aggregated metrics of main process & workers
AlpnProtocols
Wrapper message to distinguish “absent” (preserve) from “present but empty” (reset to default) for ALPN protocols. A bare repeated string cannot make this distinction in proto2 since field absence is not detectable for repeated scalars without a sentinel.
AvailableMetrics
lists of available metrics in a worker, or in the main process (in which case there are no cluster metrics)
BackendMetrics
Bucket
a prometheus histogram bucket
CertificateAndKey
CertificateSummary
domain name and fingerprint of a certificate
CertificatesByAddress
Summaries of certificates for a given address
CertificatesWithFingerprints
to reply to several certificate queries
Cluster
A cluster is what binds a frontend to backends with routing rules
ClusterHashes
ClusterInformation
Information about a given cluster Contains types usually used in requests, because they are readily available in protobuf
ClusterInformations
ClusterMetrics
the metrics of a given cluster, with several backends
CountRequests
CustomHttpAnswers
custom HTTP answers, useful for 404, 503 pages
DeactivateListener
Event
an event produced by a worker to notify about backends status
FilteredHistogram
a histogram meant to be translated to prometheus
FilteredMetrics
A metric, in a “filtered” format, which means: sendable to outside programs.
FilteredTimeSerie
FrontendFilters
list the frontends, filtered by protocol and/or domain
HardStop
Header
A single header mutation applied to a request, response, or both.
HealthCheckConfig
HealthChecksList
HstsConfig
HSTS (HTTP Strict Transport Security, RFC 6797) policy attached to an HTTPS listener default or per-frontend. The materialised Strict-Transport-Security: max-age=N[; includeSubDomains][; preload] header is injected on every successful HTTPS response (including proxy-generated 3xx/401/5xx default answers). Per RFC 6797 §7.2 the header MUST NOT be emitted on plaintext-HTTP responses; sozu rejects HSTS configured on an HttpListenerConfig at config-load time and gates the runtime injection on context.protocol == Protocol::HTTPS.
HttpEndpoint
HttpListenerConfig
details of an HTTP listener
HttpsListenerConfig
details of an HTTPS listener
InitialState
the Sōzu state, passed to a new worker. Consists in a collection of worker requests
IpAddress
ListListeners
ListOfCertificatesByAddress
Used by workers to reply to some certificate queries
ListWorkers
ListedFrontends
lists of frontends present in the state
ListenersCount
Addresses of listeners, passed to new workers
ListenersList
All listeners, listed
LoadBalancingParams
MaxConnectionsPerIpLimit
0 means unlimited (the feature is disabled). Returned by workers in response to Request.query_max_connections_per_ip.
MetricDetailStatus
Aggregated SetMetricDetail outcome across the fleet. Returned by the master to the requesting client (no WorkerResponses indirection needed because the schema is symmetric per-worker).
MetricDetailTransition
Worker-emitted cardinality-lease transition. Populates the Event.metric_detail field when a worker’s effective level changes because a lease was applied, renewed, expired (TTL janitor), or cleared. The master folds these into the audit log alongside the operator-initiated transitions emitted from bin/src/command/requests.rs::worker_request, closing the gap where worker-local expiries previously left no audit trail.
OpenTelemetry
PathRule
A filter for the path of incoming requests
Percentiles
ProtobufAccessLog
An access log, meant to be passed to another agent
ProtobufEndpoint
QueryCertificatesFilters
Should be either a domain name or a fingerprint. These filter do not compound, use either one but not both. If none of them is specified, all certificates will be returned.
QueryClusterByDomain
QueryClustersHashes
QueryHealthChecks
QueryMaxConnectionsPerIp
QueryMetricsOptions
Options when querying metrics
RemoveBackend
remove an existing backend
RemoveCertificate
RemoveListener
ReplaceCertificate
Request
A message received by Sōzu to change its state or query information
RequestCounts
RequestHttpFrontend
An HTTP or HTTPS frontend, as order to, or received from, Sōzu
RequestTcpFrontend
Response
Response to a request
ResponseContent
content of a response
ReturnListenSockets
ServerConfig
Used by a worker to start its server loop. The defaults should match those of the config module
ServerMetricsConfig
intended to workers
SetHealthCheck
SetMetricDetail
Apply, renew, or release a runtime cardinality lease on the metrics drain.
SocketAddress
matches std::net::SocketAddr in the Rust library beware that the ports are expressed with uint32 here, but they should NOT exceed uint16 value
SoftStop
Status
SubscribeEvents
TcpEndpoint
TcpListenerConfig
details of an TCP listener
Uint128
used to represent the 128 bits of an IPv6 address
UpdateHttpListenerConfig
Partial-update patch for a running HTTP listener. Only fields that are Some in the patch will be applied; absent fields preserve their current value on the listener. Bind-only fields (address, active) are intentionally absent — use RemoveListener + AddHttpListener to change them.
UpdateHttpsListenerConfig
Partial-update patch for a running HTTPS listener. Only fields that are Some in the patch will be applied; absent fields preserve their current value on the listener. Bind-only fields (tls_versions, cipher_list, cipher_suites, signature_algorithms, groups_list, certificate, certificate_chain, key, send_tls13_tickets, active) are intentionally absent — use RemoveListener + AddHttpsListener to change them.
UpdateTcpListenerConfig
Partial-update patch for a running TCP listener. Only fields that are Some in the patch will be applied; absent fields preserve their current value on the listener. Bind-only fields (address, active) are intentionally absent.
UpgradeMain
WorkerInfo
Information about a worker with id, pid, runstate
WorkerInfos
A list of worker infos
WorkerMetricDetailStatus
Per-worker outcome of a SetMetricDetail fan-out. Reported back to the requesting client so it can decide whether the elevation actually took effect (e.g. all workers acknowledged) or whether degraded operation (some workers too old) is in play.
WorkerMetrics
All metrics of a worker: proxy and clusters Populated by Options so partial results can be sent
WorkerRequest
This is sent only from Sōzu to Sōzu
WorkerResponse
A response as sent by a worker
WorkerResponses
a map of worker_id -> ResponseContent

Enums§

EventKind
HeaderPosition
Where a Header mutation applies. BOTH applies the same edit on the request side (before backend connect) and the response side (before kawa preparation). Mirrors HAProxy http-request set-header / http-response set-header parity.
ListenerType
LoadBalancingAlgorithms
LoadMetric
how sozu measures which backend is less loaded
MetricDetail
label-cardinality knob for the metrics drain. Mirrors HAProxy’s process|frontend|backend|server extra-counters opt-in: a higher level enables more granular labels (and thus more keys), letting operators bound the StatsD keyspace explicitly.
MetricsConfiguration
options to configure metrics collection
PathRuleKind
The kind of filter used for path rules
ProtobufAccessLogFormat
ProxyProtocolConfig
RedirectPolicy
Frontend-level redirect policy. Mirrors HAProxy’s http-request redirect|deny|auth directives. FORWARD routes to the backend (default). PERMANENT returns 301 with a Location header derived from redirect_scheme, optional rewrite_* fields, and cluster.https_redirect_port. FOUND returns 302 — a temporary redirect (RFC 9110 §15.4.3); user agents may rewrite POST to GET on follow. PERMANENT_REDIRECT returns 308 — a permanent redirect (RFC 9110 §15.4.9); the HTTP method MUST be preserved on follow (no GET-rewrite on POST). UNAUTHORIZED returns 401 with WWW-Authenticate: Basic realm=... using cluster.www_authenticate; suitable for blanket deny-by-default routes that still want to surface a login prompt.
RedirectScheme
Scheme to use when building the Location header for a permanent redirect. USE_SAME preserves the request scheme (default), USE_HTTP forces <http://,> USE_HTTPS forces <https://.>
ResponseStatus
RulePosition
TODO: find a proper definition for this
RunState
Runstate of a worker
TlsVersion