Support new features: HTTP3/IPv6/ProxyProtocol/OpenTelemetry (#1272)

This commit is contained in:
澄潭
2024-09-02 22:02:25 +08:00
committed by GitHub
parent f26cde3b3b
commit 144d514eb0
9 changed files with 31 additions and 13 deletions

View File

@@ -334,7 +334,7 @@ func (t *TracingController) constructTracingTracer(tracing *Tracing, namespace s
"@type": "type.googleapis.com/envoy.config.trace.v3.SkyWalkingConfig",
"client_config": {
"service_name": "higress-gateway.%s",
"backend_token": "%s"
"backend_token": "%s"
},
"grpc_service": {
"envoy_grpc": {
@@ -363,11 +363,11 @@ func (t *TracingController) constructTracingTracer(tracing *Tracing, namespace s
"name": "envoy.tracers.zipkin",
"typed_config": {
"@type": "type.googleapis.com/envoy.config.trace.v3.ZipkinConfig",
"collector_cluster": "outbound|%s||%s",
"collector_endpoint": "/api/v2/spans",
"collector_hostname": "higress-gateway",
"collector_endpoint_version": "HTTP_JSON",
"split_spans_for_request": true
"collector_cluster": "outbound|%s||%s",
"collector_endpoint": "/api/v2/spans",
"collector_hostname": "higress-gateway",
"collector_endpoint_version": "HTTP_JSON",
"split_spans_for_request": true
}
},
"random_sampling": {
@@ -389,7 +389,7 @@ func (t *TracingController) constructTracingTracer(tracing *Tracing, namespace s
"name": "envoy.tracers.opentelemetry",
"typed_config": {
"@type": "type.googleapis.com/envoy.config.trace.v3.OpenTelemetryConfig",
"service_name": "higress-gateway.%s"
"service_name": "higress-gateway.%s",
"grpc_service": {
"envoy_grpc": {
"cluster_name": "outbound|%s||%s"

View File

@@ -29,6 +29,8 @@ import (
_struct "github.com/golang/protobuf/ptypes/struct"
"istio.io/istio/pkg/cluster"
"k8s.io/apimachinery/pkg/types"
. "github.com/alibaba/higress/pkg/ingress/log"
)
const (
@@ -105,6 +107,9 @@ func CreateServiceFQDN(namespace, name string) string {
func BuildPatchStruct(config string) *_struct.Struct {
val := &_struct.Struct{}
_ = jsonpb.Unmarshal(strings.NewReader(config), val)
err := jsonpb.Unmarshal(strings.NewReader(config), val)
if err != nil {
IngressLog.Errorf("build patch struct failed, err:%v", err)
}
return val
}