package envconfig
Import Path
google.golang.org/grpc/internal/envconfig (on go.dev)
Dependency Relation
imports 3 packages, and imported by 5 packages
Involved Source Files
Package envconfig contains grpc settings configured by environment variables.
observability.go
xds.go
Package-Level Variables (total 22)
ALTSHandshakerKeepaliveParams is set if we should add the
KeepaliveParams when dial the ALTS handshaker service.
ALTSMaxConcurrentHandshakes is the maximum number of concurrent ALTS
handshakes that can be performed.
C2PResolverTestOnlyTrafficDirectorURI is the TD URI for testing.
DisableStrictPathChecking indicates whether strict path checking is
disabled. This feature can be disabled by setting the environment
variable GRPC_GO_EXPERIMENTAL_DISABLE_STRICT_PATH_CHECKING to "true".
When strict path checking is enabled, gRPC will reject requests with
paths that do not conform to the gRPC over HTTP/2 specification found at
https://github.com/grpc/grpc/blob/master/doc/PROTOCOL-HTTP2.md.
When disabled, gRPC will allow paths that do not contain a leading slash.
Enabling strict path checking is recommended for security reasons, as it
prevents potential path traversal vulnerabilities.
A future release will remove this environment variable, enabling strict
path checking behavior unconditionally.
EnableDefaultPortForProxyTarget controls whether the resolver adds a default port 443
to a target address that lacks one. This flag only has an effect when all of
the following conditions are met:
- A connect proxy is being used.
- Target resolution is disabled.
- The DNS resolver is being used.
EnableTXTServiceConfig is set if the DNS resolver should perform TXT
lookups for service config ("GRPC_ENABLE_TXT_SERVICE_CONFIG" is not
"false").
EnforceALPNEnabled is set if TLS connections to servers with ALPN disabled
should be rejected. The HTTP/2 protocol requires ALPN to be enabled, this
option is present for backward compatibility. This option may be overridden
by setting the environment variable "GRPC_ENFORCE_ALPN_ENABLED" to "true"
or "false".
ObservabilityConfig is the json configuration for the gcp/observability
package specified directly in the envObservabilityConfig env var.
This is used in the 1.0 release of gcp/observability, and thus must not be
deleted or changed.
ObservabilityConfigFile is the json configuration for the
gcp/observability specified in a file with the location specified in
envObservabilityConfigFile env var.
This is used in the 1.0 release of gcp/observability, and thus must not be
deleted or changed.
PickFirstWeightedShuffling indicates whether weighted endpoint shuffling
is enabled in the pick_first LB policy, as defined in gRFC A113. This
feature can be disabled by setting the environment variable
GRPC_EXPERIMENTAL_PF_WEIGHTED_SHUFFLING to "false".
RingHashCap indicates the maximum ring size which defaults to 4096
entries but may be overridden by setting the environment variable
"GRPC_RING_HASH_CAP". This does not override the default bounds
checking which NACKs configs specifying ring sizes > 8*1024*1024 (~8M).
RingHashSetRequestHashKey is set if the ring hash balancer can get the
request hash header by setting the "requestHashHeader" field, according
to gRFC A76. It can be enabled by setting the environment variable
"GRPC_EXPERIMENTAL_RING_HASH_SET_REQUEST_HASH_KEY" to "true".
TXTErrIgnore is set if TXT errors should be ignored
("GRPC_GO_IGNORE_TXT_ERRORS" is not "false").
XDSAuthorityRewrite indicates whether xDS authority rewriting is enabled.
This feature is defined in gRFC A81 and is enabled by setting the
environment variable GRPC_EXPERIMENTAL_XDS_AUTHORITY_REWRITE to "true".
XDSBootstrapCallCredsEnabled controls if call credentials can be used in
xDS bootstrap configuration via the `call_creds` field. For more details,
see: https://github.com/grpc/proposal/blob/master/A97-xds-jwt-call-creds.md
XDSBootstrapFileContent holds the content of the xDS bootstrap
configuration. Users can specify the bootstrap config by setting the
environment variable "GRPC_XDS_BOOTSTRAP_CONFIG".
When both bootstrap FileName and FileContent are set, FileName is used.
XDSBootstrapFileName holds the name of the file which contains xDS
bootstrap configuration. Users can specify the location of the bootstrap
file by setting the environment variable "GRPC_XDS_BOOTSTRAP".
When both bootstrap FileName and FileContent are set, FileName is used.
XDSDualstackEndpointsEnabled is true if gRPC should read the
"additional addresses" in the xDS endpoint resource.
XDSEndpointHashKeyBackwardCompat controls the parsing of the endpoint hash
key from EDS LbEndpoint metadata. Endpoint hash keys can be disabled by
setting "GRPC_XDS_ENDPOINT_HASH_KEY_BACKWARD_COMPAT" to "true". When the
implementation of A76 is stable, we will flip the default value to false
in a subsequent release. A final release will remove this environment
variable, enabling the new behavior unconditionally.
XDSHTTPConnectEnabled is true if gRPC should parse custom Metadata
configuring use of an HTTP CONNECT proxy via xDS from cluster resources.
For more details, see:
https://github.com/grpc/proposal/blob/master/A86-xds-http-connect.md
XDSSPIFFEEnabled controls if SPIFFE Bundle Maps can be used as roots of
trust. For more details, see:
https://github.com/grpc/proposal/blob/master/A87-mtls-spiffe-support.md
XDSSystemRootCertsEnabled is true when xDS enabled gRPC clients can use
the system's default root certificates for TLS certificate validation.
For more details, see:
https://github.com/grpc/proposal/blob/master/A82-xds-system-root-certs.md.
Package-Level Constants (total 2)
XDSBootstrapFileContentEnv is the env variable to set bootstrap file
content. Do not use this and read from env directly. Its value is read
and kept in variable XDSBootstrapFileContent.
When both bootstrap FileName and FileContent are set, FileName is used.
XDSBootstrapFileNameEnv is the env variable to set bootstrap file name.
Do not use this and read from env directly. Its value is read and kept in
variable XDSBootstrapFileName.
When both bootstrap FileName and FileContent are set, FileName is used.
![]() |
The pages are generated with Golds v0.8.2. (GOOS=linux GOARCH=amd64) Golds is a Go 101 project developed by Tapir Liu. PR and bug reports are welcome and can be submitted to the issue list. Please follow @zigo_101 (reachable from the left QR code) to get the latest news of Golds. |