These commits are when the Protocol Buffers files have changed: (only the last 100 relevant commits are shown)
| Commit: | e77e822 | |
|---|---|---|
| Author: | Eloi DEMOLIS | |
Fix header position parsing, fix automatic 502 Signed-off-by: Eloi DEMOLIS <eloi.demolis@clever-cloud.com>
| Commit: | 4eb3555 | |
|---|---|---|
| Author: | Eloi DEMOLIS | |
Add custom headers on frontends Signed-off-by: Eloi DEMOLIS <eloi.demolis@clever-cloud.com>
| Commit: | 1309262 | |
|---|---|---|
| Author: | Eloi DEMOLIS | |
| Committer: | Eloi DEMOLIS | |
Finalize authentication - Use Sha256 hashes - Add WWW_AUTHENTICATE variable to 401 templates Signed-off-by: Eloi DEMOLIS <eloi.demolis@clever-cloud.com>
| Commit: | fb909a6 | |
|---|---|---|
| Author: | Eloi DEMOLIS | |
| Committer: | Eloi DEMOLIS | |
Flag h2 at config level not frontend level Signed-off-by: Eloi DEMOLIS <eloi.demolis@clever-cloud.com>
| Commit: | c7a9d95 | |
|---|---|---|
| Author: | Eloi DEMOLIS | |
| Committer: | Eloi DEMOLIS | |
Add h2 flag to frontends and in Router Signed-off-by: Eloi DEMOLIS <eloi.demolis@clever-cloud.com>
| Commit: | f68a5c7 | |
|---|---|---|
| Author: | Eloi DEMOLIS | |
| Committer: | Eloi DEMOLIS | |
Add ALPN field to listener config, change listener builder Signed-off-by: Eloi DEMOLIS <eloi.demolis@clever-cloud.com>
| Commit: | 6110de3 | |
|---|---|---|
| Author: | Eloi DEMOLIS | |
PoC authentication Signed-off-by: Eloi DEMOLIS <eloi.demolis@clever-cloud.com>
| Commit: | 663b67f | |
|---|---|---|
| Author: | Eloi DEMOLIS | |
| Committer: | Eloi DEMOLIS | |
Rewrite template providing to allow custom ones Signed-off-by: Eloi DEMOLIS <eloi.demolis@clever-cloud.com>
| Commit: | 4102871 | |
|---|---|---|
| Author: | Eloi DEMOLIS | |
Add https_redirect_port on clusters Signed-off-by: Eloi DEMOLIS <eloi.demolis@clever-cloud.com>
| Commit: | c9ffaae | |
|---|---|---|
| Author: | Eloi DEMOLIS | |
Add rewrite_port on frontends Signed-off-by: Eloi DEMOLIS <eloi.demolis@clever-cloud.com>
| Commit: | 5d7e0f9 | |
|---|---|---|
| Author: | Eloi DEMOLIS | |
Allow clusterless redirections Signed-off-by: Eloi DEMOLIS <eloi.demolis@clever-cloud.com>
| Commit: | 50008c3 | |
|---|---|---|
| Author: | Eloi DEMOLIS | |
URL rewrite and redirections Signed-off-by: Eloi DEMOLIS <eloi.demolis@clever-cloud.com>
| Commit: | 001b792 | |
|---|---|---|
| Author: | Eloi DEMOLIS | |
| Committer: | Emmanuel Bosquet | |
Flag h2 at config level not frontend level Signed-off-by: Eloi DEMOLIS <eloi.demolis@clever-cloud.com>
| Commit: | befbde1 | |
|---|---|---|
| Author: | Eloi DEMOLIS | |
| Committer: | Emmanuel Bosquet | |
Add ALPN field to listener config, change listener builder Signed-off-by: Eloi DEMOLIS <eloi.demolis@clever-cloud.com>
| Commit: | b11de16 | |
|---|---|---|
| Author: | Eloi DEMOLIS | |
| Committer: | Emmanuel Bosquet | |
Add h2 flag to frontends and in Router Signed-off-by: Eloi DEMOLIS <eloi.demolis@clever-cloud.com>
| Commit: | 0561490 | |
|---|---|---|
| Author: | Eloi DEMOLIS | |
| Committer: | Emmanuel Bosquet | |
Add ALPN field to listener config, change listener builder Signed-off-by: Eloi DEMOLIS <eloi.demolis@clever-cloud.com>
| Commit: | 9b26653 | |
|---|---|---|
| Author: | Eloi DEMOLIS | |
| Committer: | Emmanuel Bosquet | |
Flag h2 at config level not frontend level Signed-off-by: Eloi DEMOLIS <eloi.demolis@clever-cloud.com>
| Commit: | 4196cea | |
|---|---|---|
| Author: | Eloi DEMOLIS | |
| Committer: | Emmanuel Bosquet | |
Add h2 flag to frontends and in Router Signed-off-by: Eloi DEMOLIS <eloi.demolis@clever-cloud.com>
| Commit: | 57923de | |
|---|---|---|
| Author: | Emmanuel Bosquet | |
| Committer: | Emmanuel Bosquet | |
add request_time metric to access logs, BREAKING fix the response_time metric, request_time was wrongly assigned to it instead, response_time is assigned the value of backend_response_time Co-Authored-By: Eloi DEMOLIS <eloi.demolis@clever-cloud.com>
The documentation is generated from this commit.
| Commit: | 64b558e | |
|---|---|---|
| Author: | Emmanuel Bosquet | |
| Committer: | Emmanuel Bosquet | |
metrics: return histograms for time metrics create local type MetricsMap implement receive_metric function for local types add error management iterate logarithmically (base 2) to produce prometheus buckets optimize the listing of available metrics, with iterators optimize function dump_cluster_metrics
| Commit: | 5deac5d | |
|---|---|---|
| Author: | Emmanuel Bosquet | |
| Committer: | Emmanuel Bosquet | |
merge cluster metrics across workers The default behaviour is now to take all metrics from the AggregatedMetrics object, merge them by cluster id, and move them to the field AggregatedMetrics::clusters. The behaviour is avoidable with the option "metrics get --workers" Note: the function merge_cluster_metrics does not merge time metrics (percentiles), they are discarded. Prometheus histograms should be mergeable though, if bucket size is consistent.
| Commit: | 6b4b96b | |
|---|---|---|
| Author: | Emmanuel Bosquet | |
| Committer: | Emmanuel Bosquet | |
merge proxying metrics accross workers
| Commit: | 97c9f30 | |
|---|---|---|
| Author: | Emmanuel Bosquet | |
| Committer: | Emmanuel Bosquet | |
display events in the CLI, document the use
| Commit: | ee2430f | |
|---|---|---|
| Author: | Emmanuel Bosquet | |
| Committer: | Emmanuel Bosquet | |
make Http[s]ListenerConfig::http_answers optional
| Commit: | 55242ba | |
|---|---|---|
| Author: | Emmanuel Bosquet | |
| Committer: | Emmanuel Bosquet | |
rename types rename DefaultAnswers to ListenerAnswers rename CustomAnswers to ClusterAnswers
| Commit: | 6023216 | |
|---|---|---|
| Author: | Emmanuel Bosquet | |
| Committer: | Emmanuel Bosquet | |
create protobuf type CustomHttpAnswers
| Commit: | 618bed0 | |
|---|---|---|
| Author: | Emmanuel Bosquet | |
| Committer: | Emmanuel Bosquet | |
apply review: cosmetic changes
| Commit: | 8e81a02 | |
|---|---|---|
| Author: | Emmanuel Bosquet | |
| Committer: | Emmanuel Bosquet | |
rename ProtobufAccessLog::error to 'message'
| Commit: | 756b78b | |
|---|---|---|
| Author: | Emmanuel Bosquet | |
| Committer: | Emmanuel Bosquet | |
create type WebSocketContext the point is to use a structure instead of a text, for an easier parsing of the access log of the access logss
| Commit: | 5f55561 | |
|---|---|---|
| Author: | Emmanuel Bosquet | |
| Committer: | Emmanuel Bosquet | |
rename log_access_* variables to access_logs_* apply clippy suggestions
| Commit: | 0885863 | |
|---|---|---|
| Author: | Eloi DEMOLIS | |
| Committer: | Emmanuel Bosquet | |
Logger refactor: better structured logs and colored logs - Refactor the Logger with the new more powerful macro prompt_log - Explicitely take ownership of RequestRecord fields in access log macros, the user can decide the best way to pass them - Add logger specific fields in the RequestRecord - Add basic colors to logs and access logs, configurable in the condig, checked at runtime - Cache the Logger::enabled result at call site Signed-off-by: Eloi DEMOLIS <eloi.demolis@clever-cloud.com>
| Commit: | dfacdb7 | |
|---|---|---|
| Author: | Emmanuel Bosquet | |
| Committer: | Emmanuel Bosquet | |
protobuf access logs configuration: - create configurable log_access_format: ascii or binary new types: - create protobuf type BinaryAccessLog, with subtypes - replace lib::logs::Endpoint with proto::command::BinaryEndpoint - use fixed32 for ipv4 addresses refactor: - remove log module in sozu_lib - isolate SessionMetrics::register_end_of_session transfer types to sozu_command_lib::logging: - CachedTags - RequestRecord - LogDuration - LogContext avoid allocation: - create unsafe trait DuplicateOwnership to display access logs - intermediate buffer in the logger Rewrite log macros: - remove separate TAG RefCell - move log backends and directives to InnerLogger - allow borrow of Logger::tag and Logger::inner simultaneously - check for Logger::enabled as soon as possible - deduplicate log macros with/without arguments - use scoped macro names instead of the alphabetic list Co-Authored-By: Eloi DEMOLIS <eloi.demolis@clever-cloud.com>
| Commit: | 6aa45b9 | |
|---|---|---|
| Author: | Emmanuel Bosquet | |
| Committer: | Emmanuel Bosquet | |
fix and rewrite CertificateResolver refactor: - simplify overriding of certificate names and expiration - remove trait ResolveCertificate - rename MutexWrappedCertificateResolver to MutexCertificateResolver - rearrange error types, remove useless functions - change signature of get_cn_and_san_attributes fixes: - fix concurrent certificate insert in CertificateResolver - ensure proper removal of certificate in CertificateResolver - fix removal of certificate with identical fingerprint Co-Authored-By: Eloi DEMOLIS <eloi.demolis@clever-cloud.com>
| Commit: | 5852c6b | |
|---|---|---|
| Author: | Emmanuel Bosquet | |
| Committer: | Emmanuel Bosquet | |
pass initial state to workers in protobuf
| Commit: | 6d43eb1 | |
|---|---|---|
| Author: | Emmanuel Bosquet | |
| Committer: | Emmanuel Bosquet | |
SCM sockets transmit listeners in binary format
| Commit: | 4f2d760 | |
|---|---|---|
| Author: | Emmanuel Bosquet | |
| Committer: | Emmanuel Bosquet | |
translate ServerConfig in protobuf
| Commit: | e382a1c | |
|---|---|---|
| Author: | Emmanuel Bosquet | |
| Committer: | Emmanuel Bosquet | |
translate WorkerRequest and WorkerResponse to protobuf
| Commit: | fb11245 | |
|---|---|---|
| Author: | Emmanuel Bosquet | |
| Committer: | Emmanuel Bosquet | |
create protobuf type SocketAddress, use everywhere
| Commit: | f0ecc54 | |
|---|---|---|
| Author: | Eloi DEMOLIS | |
| Committer: | Emmanuel Bosquet | |
rewrite CommandServer with MIO The multi-threaded, event-based architecture was too complicated and prevented introducing protobuf channels. The new CommandServer functions on the same principle as the proxy logic of Sōzu: listen to events with Mio in an event loop, dispatch the events accordingly by creating WorkerSessions, ClientSessions. This new CommandServer allows to create Tasks, that can scatter requests to all workers, gather their responses as the event loop goes, and invoke the task finish() when all responses are gathered. A worker whose unix socket is disconnected will be killed, and automatically restarted if configurated to. Conversely, if the main process dies, the orphaned workers will perform a hard stop. Sōzu channels used everywhere for communication with workers and clients. Automatic counting and respawning of workers, at each tick implement soft stop and hard stop improve CLI: - disable logging in CLI when displaying JSON - sort list of workers when displaying status error handling with thiserror remove obsolete documentation on managing workers remove unused dependencies: smol, futures, futures-lite, anyhow Co-Authored-By: Emmanuel BOSQUET <bjokac@gmail.com>
| Commit: | b7ef38f | |
|---|---|---|
| Author: | Emmanuel Bosquet | |
| Committer: | Emmanuel Bosquet | |
add no-clusters option on metrics query
| Commit: | 0e62ff3 | |
|---|---|---|
| Author: | Emmanuel Bosquet | |
| Committer: | Emmanuel Bosquet | |
refactor cli display by creating Response::display remove bin/cli/display.rs since it is ported add json field to CommandManager add global json option to CLI arguments put certificate loading functions in certificate module
| Commit: | ef17772 | |
|---|---|---|
| Author: | Eloi DEMOLIS | |
| Committer: | Eloi DEMOLIS | |
Add h2 flag to frontends and in Router Signed-off-by: Eloi DEMOLIS <eloi.demolis@clever-cloud.com>
| Commit: | 68d8611 | |
|---|---|---|
| Author: | Eloi DEMOLIS | |
| Committer: | Eloi DEMOLIS | |
Add ALPN field to listener config, change listener builder Signed-off-by: Eloi DEMOLIS <eloi.demolis@clever-cloud.com>
| Commit: | 0c3c129 | |
|---|---|---|
| Author: | Emmanuel Bosquet | |
| Committer: | Emmanuel Bosquet | |
make send_tls13_tickets configurable the TLS 1.3 ticket increase the number of getrandom syscalls, with almost no influence on performance
| Commit: | 74262f0 | |
|---|---|---|
| Author: | Eloi DEMOLIS | |
| Committer: | Eloi DEMOLIS | |
Add ALPN field to listener config, change listener builder Signed-off-by: Eloi DEMOLIS <eloi.demolis@clever-cloud.com>
| Commit: | a47e900 | |
|---|---|---|
| Author: | Eloi DEMOLIS | |
| Committer: | Eloi DEMOLIS | |
Add h2 flag to frontends and in Router Signed-off-by: Eloi DEMOLIS <eloi.demolis@clever-cloud.com>
| Commit: | 9aba530 | |
|---|---|---|
| Author: | Emmanuel Bosquet | |
| Committer: | Emmanuel Bosquet | |
comments on metrics query
| Commit: | b34b60f | |
|---|---|---|
| Author: | Emmanuel Bosquet | |
| Committer: | Emmanuel Bosquet | |
count request types received in ConfigState documenting comments on ConfigState
| Commit: | 721a951 | |
|---|---|---|
| Author: | Emmanuel Bosquet | |
| Committer: | Emmanuel Bosquet | |
merge request types into RequestType::QueryCertificatesFromWorkers
| Commit: | e24659d | |
|---|---|---|
| Author: | Emmanuel Bosquet | |
| Committer: | Emmanuel Bosquet | |
introduce type QueryCertificatesFilters
| Commit: | 9d554a5 | |
|---|---|---|
| Author: | Emmanuel Bosquet | |
| Committer: | Emmanuel Bosquet | |
rename ContentType::Certificates to CertificatesByAddress implement Display for CertificateSummary
| Commit: | 2863c31 | |
|---|---|---|
| Author: | Emmanuel Bosquet | |
| Committer: | Emmanuel Bosquet | |
CLI: query all certificates in the state
| Commit: | 308f22f | |
|---|---|---|
| Author: | Emmanuel Bosquet | |
| Committer: | Emmanuel Bosquet | |
remove type CertificateWithNames
| Commit: | 4776d5f | |
|---|---|---|
| Author: | Emmanuel Bosquet | |
| Committer: | Emmanuel Bosquet | |
merge certificate types in CertificatesWithFingerprints
| Commit: | a71f485 | |
|---|---|---|
| Author: | Emmanuel Bosquet | |
| Committer: | Emmanuel Bosquet | |
query certificates from the state with fingerprint
| Commit: | 8ea3768 | |
|---|---|---|
| Author: | Emmanuel Bosquet | |
| Committer: | Emmanuel Bosquet | |
CLI: show certificate validity
| Commit: | 91dc12d | |
|---|---|---|
| Author: | Emmanuel Bosquet | |
| Committer: | Emmanuel Bosquet | |
CertificatesMatchingADomainName contains CertificateAndKey
| Commit: | ca18682 | |
|---|---|---|
| Author: | Emmanuel Bosquet | |
| Committer: | Emmanuel Bosquet | |
query the state for a certificate, by domain
| Commit: | cdc8629 | |
|---|---|---|
| Author: | Emmanuel Bosquet | |
| Committer: | Emmanuel Bosquet | |
remove the DumpState command from the protobuf Request
| Commit: | 78a6363 | |
|---|---|---|
| Author: | Emmanuel Bosquet | |
| Committer: | Emmanuel Bosquet | |
document protobuf in the sozu-command-lib README
| Commit: | d51590c | |
|---|---|---|
| Author: | Emmanuel Bosquet | |
| Committer: | Emmanuel Bosquet | |
write Response in protobuf
| Commit: | dbab4b4 | |
|---|---|---|
| Author: | Emmanuel Bosquet | |
| Committer: | Emmanuel Bosquet | |
write ResponseContent in protobuf
| Commit: | 537e0e9 | |
|---|---|---|
| Author: | Emmanuel Bosquet | |
| Committer: | Emmanuel Bosquet | |
write ListedFrontends in protobuf
| Commit: | 75b5ade | |
|---|---|---|
| Author: | Emmanuel Bosquet | |
| Committer: | Emmanuel Bosquet | |
create types ListOfCertificatesByAddress and CertificatesByAddress
| Commit: | 802c3e9 | |
|---|---|---|
| Author: | Emmanuel Bosquet | |
| Committer: | Emmanuel Bosquet | |
create type CertificateWithNames
| Commit: | f005d9a | |
|---|---|---|
| Author: | Emmanuel Bosquet | |
| Committer: | Emmanuel Bosquet | |
create type ClusterInformations
| Commit: | 30e602d | |
|---|---|---|
| Author: | Emmanuel Bosquet | |
| Committer: | Emmanuel Bosquet | |
write ClusterInformation in protobuf
| Commit: | 2e26e76 | |
|---|---|---|
| Author: | Emmanuel Bosquet | |
| Committer: | Emmanuel Bosquet | |
create type ClusterHashes
| Commit: | 97fb5da | |
|---|---|---|
| Author: | Emmanuel Bosquet | |
| Committer: | Emmanuel Bosquet | |
write Event and EventKind in protobuf
| Commit: | 7fb08f3 | |
|---|---|---|
| Author: | Emmanuel Bosquet | |
| Committer: | Emmanuel Bosquet | |
make response::Event a struct, create EventKind
| Commit: | d817d9d | |
|---|---|---|
| Author: | Emmanuel Bosquet | |
| Committer: | Emmanuel Bosquet | |
create type WorkerInfos
| Commit: | 582d285 | |
|---|---|---|
| Author: | Emmanuel Bosquet | |
| Committer: | Emmanuel Bosquet | |
write ResponseStatus in protobuf
| Commit: | 66e36d6 | |
|---|---|---|
| Author: | Emmanuel Bosquet | |
| Committer: | Emmanuel Bosquet | |
write Request in protobuf
| Commit: | dbd1fad | |
|---|---|---|
| Author: | Emmanuel Bosquet | |
| Committer: | Emmanuel Bosquet | |
write AvailableMetrics in protobuf
| Commit: | 3e41887 | |
|---|---|---|
| Author: | Emmanuel Bosquet | |
| Committer: | Emmanuel Bosquet | |
write AggregatedMetrics in protobuf
| Commit: | 50b1a2e | |
|---|---|---|
| Author: | Emmanuel Bosquet | |
| Committer: | Emmanuel Bosquet | |
write HttpFrontendConfig in protobuf
| Commit: | a91a576 | |
|---|---|---|
| Author: | Emmanuel Bosquet | |
| Committer: | Emmanuel Bosquet | |
write HttpsFrontendConfig in protobuf
| Commit: | 6daea56 | |
|---|---|---|
| Author: | Emmanuel Bosquet | |
| Committer: | Emmanuel Bosquet | |
write TcpListenerConfig in protobuf
| Commit: | bd6d535 | |
|---|---|---|
| Author: | Emmanuel Bosquet | |
| Committer: | Emmanuel Bosquet | |
write ListenersList in protobuf listeners are stored in BTreeMaps in ConfigState
| Commit: | 7617b34 | |
|---|---|---|
| Author: | Emmanuel Bosquet | |
| Committer: | Emmanuel Bosquet | |
write ListenerType in protobuf
| Commit: | 7254b98 | |
|---|---|---|
| Author: | Emmanuel Bosquet | |
| Committer: | Emmanuel Bosquet | |
write RemoveListener in protobuf
| Commit: | c2df4b0 | |
|---|---|---|
| Author: | Emmanuel Bosquet | |
| Committer: | Emmanuel Bosquet | |
write ActivateListener in protobuf
| Commit: | d12920e | |
|---|---|---|
| Author: | Emmanuel Bosquet | |
| Committer: | Emmanuel Bosquet | |
write DeactivateListener in protobuf
| Commit: | 19d2915 | |
|---|---|---|
| Author: | Emmanuel Bosquet | |
| Committer: | Emmanuel Bosquet | |
put field names to CertificateAndKey remove field names from RelpaceCertificate and AddCertificate
| Commit: | 6716f8a | |
|---|---|---|
| Author: | Emmanuel Bosquet | |
| Committer: | Emmanuel Bosquet | |
write ProxyProtocolConfig in protobuf
| Commit: | 4e1e7d0 | |
|---|---|---|
| Author: | Emmanuel Bosquet | |
| Committer: | Emmanuel Bosquet | |
write LoadMetric in protobuf
| Commit: | 25f6018 | |
|---|---|---|
| Author: | Emmanuel Bosquet | |
| Committer: | Emmanuel Bosquet | |
write Cluster in protobuf
| Commit: | 82bb6c5 | |
|---|---|---|
| Author: | Emmanuel Bosquet | |
| Committer: | Emmanuel Bosquet | |
write RequestTcpFrontend in protobuf
| Commit: | 685bb16 | |
|---|---|---|
| Author: | Emmanuel Bosquet | |
| Committer: | Emmanuel Bosquet | |
write RemoveBackend in protobuf
| Commit: | bdd402f | |
|---|---|---|
| Author: | Emmanuel Bosquet | |
| Committer: | Emmanuel Bosquet | |
write AddBackend and LoadBalancingParams in protobuf use ..Default::default() in state.rs
| Commit: | c3969d2 | |
|---|---|---|
| Author: | Emmanuel Bosquet | |
| Committer: | Emmanuel Bosquet | |
write QueryClusterByDomain in protobuf
| Commit: | a87214f | |
|---|---|---|
| Author: | Emmanuel Bosquet | |
| Committer: | Emmanuel Bosquet | |
write QueryMetricsOptions in protobuf
| Commit: | ba6928c | |
|---|---|---|
| Author: | Emmanuel Bosquet | |
| Committer: | Emmanuel Bosquet | |
write MetricsConfiguration in protobuf
| Commit: | be75673 | |
|---|---|---|
| Author: | Emmanuel Bosquet | |
| Committer: | Emmanuel Bosquet | |
write RunState in protobuf
| Commit: | a8c87a1 | |
|---|---|---|
| Author: | Emmanuel Bosquet | |
| Committer: | Emmanuel Bosquet | |
write WorkerInfo in protobuf
| Commit: | c674b64 | |
|---|---|---|
| Author: | Emmanuel Bosquet | |
| Committer: | Emmanuel Bosquet | |
write Percentiles in protobuf
| Commit: | f6a84e1 | |
|---|---|---|
| Author: | Emmanuel Bosquet | |
| Committer: | Emmanuel Bosquet | |
write FilteredTimeSerie in protobuf
| Commit: | 03332c7 | |
|---|---|---|
| Author: | Emmanuel Bosquet | |
| Committer: | Emmanuel Bosquet | |
write FilteredMetrics in protobuf
| Commit: | 332ed3e | |
|---|---|---|
| Author: | Emmanuel Bosquet | |
| Committer: | Emmanuel Bosquet | |
write BackendMetrics and ClusterMetrics in protobuf
| Commit: | 1edcf68 | |
|---|---|---|
| Author: | Emmanuel Bosquet | |
| Committer: | Emmanuel Bosquet | |
write WorkerMetrics in protobuf