package envconfig

Import Path
	google.golang.org/grpc/internal/envconfig (on go.dev)

Dependency Relation
	imports 3 packages, and imported by 4 packages

Involved Source Files Package envconfig contains grpc settings configured by environment variables. observability.go xds.go
Package-Level Functions (total 2, neither is exported)
Package-Level Variables (total 17, all are exported)
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.
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".
NewPickFirstEnabled is set if the new pickfirst leaf policy is to be used instead of the exiting pickfirst implementation. This can be disabled by setting the environment variable "GRPC_EXPERIMENTAL_ENABLE_NEW_PICK_FIRST" to "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.
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").
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.
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 4, in which 2 are exported)
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.