@@ -76,25 +76,34 @@ func (f *upstreamFilter) RequestHeaders(e sdk.EnvoyHTTPFilter, _ bool) sdk.Reque
7676 rfPtrStr , ok := e .GetDynamicMetadataString (internalapi .AIGatewayFilterMetadataNamespace ,
7777 routerFilterPointerDynamicMetadataKey )
7878 if ! ok {
79- e .SendLocalReply (500 , nil , []byte ("router filter pointer not found in dynamic metadata" ))
79+ e .SendLocalReply (500 , nil , []byte ("internal server error" ))
80+ sdk .Log (sdk .LogLevelError , "router filter pointer not found in dynamic metadata" )
8081 return sdk .RequestHeadersStatusStopIteration
8182 }
83+
8284 rfPtr , err := strconv .ParseInt (rfPtrStr , 10 , 64 )
8385 if err != nil {
84- e .SendLocalReply (500 , nil , []byte (fmt .Sprintf ("invalid router filter pointer: %v" , err )))
86+ e .SendLocalReply (500 , nil , []byte ("internal server error" ))
87+ sdk .Log (sdk .LogLevelError , "failed to parse router filter pointer from dynamic metadata: %v" , err )
8588 return sdk .RequestHeadersStatusStopIteration
8689 }
90+ if sdk .LogDebugEnabled {
91+ sdk .Log (sdk .LogLevelDebug , "upstream filter got router filter pointer: %d" , rfPtr )
92+ }
8793 rf := (* routerFilter )(unsafe .Pointer (uintptr (rfPtr ))) // nolint:govet
8894 rf .attemptCount ++
8995 onRetry := rf .attemptCount > 1
96+
9097 backend , ok := e .GetUpstreamHostMetadataString (internalapi .InternalEndpointMetadataNamespace , internalapi .InternalMetadataBackendNameKey )
9198 if ! ok {
92- e .SendLocalReply (500 , nil , []byte ("backend name not found in upstream host metadata" ))
99+ e .SendLocalReply (500 , nil , []byte ("internal server error" ))
100+ sdk .Log (sdk .LogLevelError , "backend name not found in upstream host metadata" )
93101 return sdk .RequestHeadersStatusStopIteration
94102 }
95103 b , ok := rf .runtimeFilterConfig .Backends [backend ]
96104 if ! ok {
97- e .SendLocalReply (500 , nil , []byte (fmt .Sprintf ("backend %s not found in filter config" , backend )))
105+ e .SendLocalReply (500 , nil , []byte ("internal server error" ))
106+ sdk .Log (sdk .LogLevelError , "backend %s not found in runtime filter config in %v" , backend , rf .runtimeFilterConfig )
98107 return sdk .RequestHeadersStatusStopIteration
99108 }
100109 f .stream = rf .typedFilter .Stream ()
0 commit comments