前端代理(Envoy)
前端代理用于用户界面的反向代理,例如前端、Jaeger、Grafana、负载生成器和特性标志服务。
启用 OpenTelemetry
注意:仅非合成请求会触发 envoy 跟踪。
为了使 Envoy 在接收到请求时生成跨度,需要以下配置:
static_resources:
listeners:
- address:
socket_address:
address: 0.0.0.0
port_value: ${ENVOY_PORT}
filter_chains:
- filters:
- name: envoy.filters.network.http_connection_manager
typed_config:
'@type': type.googleapis.com/envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager
codec_type: AUTO
stat_prefix: ingress_http
tracing:
provider:
name: envoy.tracers.opentelemetry
typed_config:
'@type': type.googleapis.com/envoy.config.trace.v3.OpenTelemetryConfig
grpc_service:
envoy_grpc:
cluster_name: opentelemetry_collector
timeout: 0.250s
service_name: frontend-proxy
clusters:
- name: opentelemetry_collector
type: STRICT_DNS
lb_policy: ROUND_ROBIN
typed_extension_protocol_options:
envoy.extensions.upstreams.http.v3.HttpProtocolOptions:
'@type': type.googleapis.com/envoy.extensions.upstreams.http.v3.HttpProtocolOptions
explicit_http_config:
http2_protocol_options: {}
load_assignment:
cluster_name: opentelemetry_collector
endpoints:
- lb_endpoints:
- endpoint:
address:
socket_address:
address: ${OTEL_COLLECTOR_HOST}
port_value: ${OTEL_COLLECTOR_PORT}
其中 OTEL_COLLECTOR_HOST
和 OTEL_COLLECTOR_PORT
是通过环境变量传递的。
最后修改 December 10, 2023: translate (a4350d6e)