Loading

Configure proxy settings for EDOT components

Stack Serverless Observability

When running Elastic Distributions of OpenTelemetry (EDOT) in environments that require outbound traffic to go through a proxy, you must explicitly configure proxy settings.

You may need to configure a proxy if:

  • Your app is deployed behind a corporate proxy or firewall.
  • Your telemetry is sent to Elastic APM in Elastic Cloud or another hosted destination.
  • Network errors such as Connection timed out or SSL handshake failed appear in logs.
Variable Description
HTTP_PROXY URL of the proxy server for HTTP requests
HTTPS_PROXY URL of the proxy server for HTTPS requests
NO_PROXY Comma-separated list of hosts to exclude

Most EDOT components honor common proxy environment variables. The following examples show how to configure them:

docker run -e HTTP_PROXY=http://<proxy.address>:<port> \
           -e HTTPS_PROXY=http://<proxy.address>:<port> \
	        otel/opentelemetry-collector:latest
		
services:
   edotcollector:
      environment:
         - HTTP_PROXY=http://<proxy.address>:<port>
         - HTTPS_PROXY=http://<proxy.address>:<port>
		
env:
   - name: HTTP_PROXY
     value: '<proxy.address>:<port>'
   - name: HTTPS_PROXY
     value: '<proxy.address>:<port>'
		
[Service]
Environment="HTTP_PROXY=http://<proxy.address>:<port>"
Environment="HTTPS_PROXY=http://<proxy.address>:<port>"
Environment="NO_PROXY=<address1>,<address2>"
		
Note

For the EDOT Collector, proxy support applies to all exporters, including those using gRPC. No special configuration is needed beyond the environment variables.

If you're using an SDK that doesn't support proxy variables directly, consider routing telemetry through an EDOT Collector configured with proxy settings. This ensures consistent proxy handling. For more information, refer to Proxy settings for EDOT SDKs.

Proxy support - contrib documentation