diff options
author | gjoranv <gv@verizonmedia.com> | 2021-03-18 11:49:26 +0100 |
---|---|---|
committer | gjoranv <gv@verizonmedia.com> | 2021-03-23 22:56:31 +0100 |
commit | 121e22ef74bb74cbae8aac6d7c01cc2de6114086 (patch) | |
tree | 7bc5481c9b3cc44af64167fd239e8027b2d02681 | |
parent | 1110d14c9c99f29b60f0551c6cd36d549104227b (diff) |
Add config defs from jdisc_http_service and container-core-config
6 files changed, 268 insertions, 0 deletions
diff --git a/container-core/src/main/resources/configdefinitions/container.core.access-log.def b/container-core/src/main/resources/configdefinitions/container.core.access-log.def new file mode 100644 index 00000000000..69058b3d8da --- /dev/null +++ b/container-core/src/main/resources/configdefinitions/container.core.access-log.def @@ -0,0 +1,23 @@ +# Copyright Verizon Media. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. +namespace=container.core + +# File name patterns supporting the expected time variables, e.g. ".%Y%m%d%H%M%S" +fileHandler.pattern string + +# When should rotation happen, in minutes after midnight +# Does this really need to be configurable? +# Could just configure "every N minutes" instead +fileHandler.rotation string default="0 60 ..." + +# Use this as the name of the symlink created pointing to the newest file in the "date" naming scheme. +# This is ignored if the sequence naming scheme is used. +fileHandler.symlink string default="" + +# compress the previous access log after rotation +fileHandler.compressOnRotation bool default=true + +# Compression format +fileHandler.compressionFormat enum {GZIP, ZSTD} default=GZIP + +# Max queue length of file handler +fileHandler.queueSize int default=10000 diff --git a/container-core/src/main/resources/configdefinitions/container.logging.connection-log.def b/container-core/src/main/resources/configdefinitions/container.logging.connection-log.def new file mode 100644 index 00000000000..e845a8351d5 --- /dev/null +++ b/container-core/src/main/resources/configdefinitions/container.logging.connection-log.def @@ -0,0 +1,10 @@ +namespace=container.logging + +# Name of the cluster +cluster string + +# Log directory name +logDirectoryName string default="qrs" + +# Max queue length of file handler +queueSize int default=10000
\ No newline at end of file diff --git a/container-core/src/main/resources/configdefinitions/jdisc.http.client.jdisc.http.client.http-client.def b/container-core/src/main/resources/configdefinitions/jdisc.http.client.jdisc.http.client.http-client.def new file mode 100644 index 00000000000..8f99fccec94 --- /dev/null +++ b/container-core/src/main/resources/configdefinitions/jdisc.http.client.jdisc.http.client.http-client.def @@ -0,0 +1,36 @@ +# Copyright 2017 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. +namespace=jdisc.http.client + +userAgent string default = "JDisc/1.0" +chunkedEncodingEnabled bool default = false +compressionEnabled bool default = false +connectionPoolEnabled bool default = true +followRedirects bool default = false +removeQueryParamsOnRedirect bool default = true +sslConnectionPoolEnabled bool default = true +proxyServer string default = "" +useProxyProperties bool default = false +useRawUri bool default = false +compressionLevel int default = -1 +maxNumConnections int default = -1 +maxNumConnectionsPerHost int default = -1 +maxNumRedirects int default = 5 +maxNumRetries int default = 0 +connectionTimeout double default = 60 +idleConnectionInPoolTimeout double default = 60 +idleConnectionTimeout double default = 60 +idleWebSocketTimeout double default = 15 +requestTimeout double default = 60 + +ssl.enabled bool default = false +ssl.keyStoreType string default = "JKS" + +# Vespa home is prepended is path is relative +ssl.keyStorePath string default = "jdisc_container/keyStore.jks" + +# Vespa home is prepended is path is relative +ssl.trustStorePath string default = "conf/jdisc_container/trustStore.jks" + +ssl.keyDBKey string default = "jdisc_container" +ssl.algorithm string default = "SunX509" +ssl.protocol string default = "TLS" diff --git a/container-core/src/main/resources/configdefinitions/jdisc.http.jdisc.http.connector.def b/container-core/src/main/resources/configdefinitions/jdisc.http.jdisc.http.connector.def new file mode 100644 index 00000000000..055e5ad62d2 --- /dev/null +++ b/container-core/src/main/resources/configdefinitions/jdisc.http.jdisc.http.connector.def @@ -0,0 +1,127 @@ +# Copyright 2017 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. +namespace=jdisc.http + +# The TCP port to listen to for this connector. +listenPort int default=0 + +# The connector name +name string default="default" + +# The header field cache size. +headerCacheSize int default=512 + +# The size of the buffer into which response content is aggregated before being sent to the client. +outputBufferSize int default=65536 + +# The maximum size of a request header. +requestHeaderSize int default=65536 + +# The maximum size of a response header. +responseHeaderSize int default=65536 + +# The accept queue size (also known as accept backlog). +acceptQueueSize int default=0 + +# Whether the server socket reuses addresses. +reuseAddress bool default=true + +# The maximum idle time for a connection, which roughly translates to the Socket.setSoTimeout(int). +idleTimeout double default=180.0 + +# DEPRECATED - Ignored, no longer in use +stopTimeout double default = 30.0 +# TODO Vespa 8 Remove stop timeout + +# Whether or not to have socket keep alive turned on. +tcpKeepAliveEnabled bool default=false + +# Enable/disable TCP_NODELAY (disable/enable Nagle's algorithm). +tcpNoDelay bool default=true + +# Whether to enable connection throttling. New connections will be dropped when a threshold is exceeded. +throttling.enabled bool default=false + +# Max number of connections. +throttling.maxConnections int default=-1 + +# Max memory utilization as a value between 0 and 1. +throttling.maxHeapUtilization double default=-1.0 + +# Max connection accept rate per second. +throttling.maxAcceptRate int default=-1 + +# Idle timeout in seconds applied to endpoints when a threshold is exceeded. +throttling.idleTimeout double default=-1.0 + +# Whether to enable TLS on connector when Vespa is configured with TLS. +# The connector will implicitly enable TLS if set to 'true' and Vespa TLS is enabled. +implicitTlsEnabled bool default=true + +# Whether to enable SSL for this connector. +ssl.enabled bool default=false + +# File with private key in PEM format. Specify either this or privateKey, but not both +ssl.privateKeyFile string default="" + +# Private key in PEM format. Specify either this or privateKeyFile, but not both +ssl.privateKey string default="" + +# File with certificate in PEM format. Specify either this or certificate, but not both +ssl.certificateFile string default="" + +# Certificate in PEM format. Specify either this or certificateFile, but not both +ssl.certificate string default="" + +# with trusted CA certificates in PEM format. Used to verify clients +# - this is the name of a file on the local container file system +# - only one of caCertificateFile and caCertificate +ssl.caCertificateFile string default="" + +# with trusted CA certificates in PEM format. Used to verify clients +# - this is the actual certificates instead of a pointer to the file +# - only one of caCertificateFile and caCertificate +ssl.caCertificate string default="" + +# Client authentication mode. See SSLEngine.getNeedClientAuth()/getWantClientAuth() for details. +ssl.clientAuth enum { DISABLED, WANT_AUTH, NEED_AUTH } default=DISABLED + +# List of enabled cipher suites. JDisc will use Vespa default if empty. +ssl.enabledCipherSuites[] string + +# List of enabled TLS protocol versions. JDisc will use Vespa default if empty. +ssl.enabledProtocols[] string + +# Enforce TLS client authentication for https requests at the http layer. +# Intended to be used with connectors with optional client authentication enabled. +# 401 status code is returned for requests from non-authenticated clients. +tlsClientAuthEnforcer.enable bool default=false + +# Paths where client authentication should not be enforced. To be used in combination with WANT_AUTH. Typically used for health checks. +tlsClientAuthEnforcer.pathWhitelist[] string + +# Use connector only for proxying '/status.html' health checks. Any ssl configuration will be ignored if this option is enabled. +healthCheckProxy.enable bool default=false + +# Which port to proxy +healthCheckProxy.port int default=8080 + +# Low-level timeout for proxy client (socket connect, socket read, connection pool). Aggregate timeout will be longer. +healthCheckProxy.clientTimeout double default=1.0 + +# Enable PROXY protocol V1/V2 support (only for https connectors). +proxyProtocol.enabled bool default=false + +# Allow https in parallel with proxy protocol +proxyProtocol.mixedMode bool default=false + +# Redirect all requests to https port +secureRedirect.enabled bool default=false + +# Target port for redirect +secureRedirect.port int default=443 + +# Maximum number of request per connection before server marks connections as non-persistent. Set to '0' to disable. +maxRequestsPerConnection int default=0 + +# Maximum number of seconds a connection can live before it's marked as non-persistent. Set to '0' to disable. +maxConnectionLife double default=0.0 diff --git a/container-core/src/main/resources/configdefinitions/jdisc.http.jdisc.http.server.def b/container-core/src/main/resources/configdefinitions/jdisc.http.jdisc.http.server.def new file mode 100644 index 00000000000..049080dedbd --- /dev/null +++ b/container-core/src/main/resources/configdefinitions/jdisc.http.jdisc.http.server.def @@ -0,0 +1,67 @@ +# Copyright 2017 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. +namespace=jdisc.http + +# Whether to enable developer mode, where stack traces etc are visible in response bodies. +developerMode bool default=false + +# The gzip compression level to use, if compression is enabled in a request. +responseCompressionLevel int default=6 + +# DEPRECATED - Ignored, no longer in use. +httpKeepAliveEnabled bool default=true +# TODO Vespa 8 Remove httpKeepAliveEnabled + +# Maximum number of request per http connection before server will hangup. +# Naming taken from apache http server. +# 0 means never hangup. +# DEPRECATED - Ignored, no longer in use. Use similar parameter in connector config instead. +maxKeepAliveRequests int default=0 +# TODO Vespa 8 Remove maxKeepAliveRequests + +# Whether the request body of POSTed forms should be removed (form parameters are available as request parameters). +removeRawPostBodyForWwwUrlEncodedPost bool default=false + +# The component ID of a filter +filter[].id string + +# The binding of a filter +filter[].binding string + +# Filter id for a default filter (chain) +defaultFilters[].filterId string + +# The local port which the default filter should be applied to +defaultFilters[].localPort int + +# Reject all requests not handled by a request filter (chain) +strictFiltering bool default = false + +# Max number of threads in underlying Jetty pool +maxWorkerThreads int default = 200 + +# Min number of threads in underlying Jetty pool +minWorkerThreads int default = 8 + +# Stop timeout in seconds. The maximum allowed time to process in-flight requests during server shutdown. Setting it to 0 disable graceful shutdown. +stopTimeout double default = 30.0 + +# Enable embedded JMX server. Note: only accessible through the loopback interface. +jmx.enabled bool default = false + +# Listen port for the JMX server. +jmx.listenPort int default = 1099 + +# Paths that should be reported with monitoring dimensions where applicable +metric.monitoringHandlerPaths[] string + +# Paths that should be reported with search dimensions where applicable +metric.searchHandlerPaths[] string + +# HTTP request headers that contain remote address +accessLog.remoteAddressHeaders[] string + +# HTTP request headers that contain remote port +accessLog.remotePortHeaders[] string + +# Whether to enable jdisc connection log +connectionLog.enabled bool default=false diff --git a/container-core/src/main/resources/configdefinitions/jdisc.http.jdisc.http.servlet-paths.def b/container-core/src/main/resources/configdefinitions/jdisc.http.jdisc.http.servlet-paths.def new file mode 100644 index 00000000000..86707b027be --- /dev/null +++ b/container-core/src/main/resources/configdefinitions/jdisc.http.jdisc.http.servlet-paths.def @@ -0,0 +1,5 @@ +# Copyright 2017 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. +namespace=jdisc.http + +# path by servlet componentId +servlets{}.path string |