ext_proc: propagate detailed GRPC status for fail open#40808
ext_proc: propagate detailed GRPC status for fail open#40808botengyao merged 11 commits intoenvoyproxy:mainfrom
Conversation
adisuissa
left a comment
There was a problem hiding this comment.
Thanks!
Overall LGTM.
Please add a release note (here].
Assigning @yanjunxiang-google as code-owner.
/assign @yanjunxiang-google
3b68ca7 to
2580a12
Compare
Done. Release note is added |
|
Thanks for working on this. Please fix the DCO and other CI errors |
|
CC @envoyproxy/api-shepherds: Your approval is needed for changes made to |
b851831 to
d01a0be
Compare
Signed-off-by: Melissa Ginaldi <mginaldi@google.com>
d01a0be to
55d351f
Compare
Signed-off-by: Melissa Ginaldi <mginaldi@google.com>
…tats Signed-off-by: Melissa Ginaldi <mginaldi@google.com>
Signed-off-by: Melissa Ginaldi <mginaldi@google.com>
Signed-off-by: Melissa Ginaldi <mginaldi@google.com>
…tats Signed-off-by: Melissa Ginaldi <mginaldi@google.com>
|
/retest |
I fixed the DCO error. The CI error is unrelated to my PR and its changes. I think #40860 is trying to fix the Envoy/Checks error |
…tats Signed-off-by: Melissa Ginaldi <mginaldi@google.com>
|
The Envy checks are now passing. This PR is ready for review |
|
LGTM |
|
/assign @yanavlasov |
adisuissa
left a comment
There was a problem hiding this comment.
Small nit, but otherwise LGTM.
Thanks!
Signed-off-by: Melissa Ginaldi <mginaldi@google.com>
…tats Signed-off-by: Melissa Ginaldi <mginaldi@google.com>
| } | ||
|
|
||
| void Filter::onGrpcClose() { | ||
| void Filter::onGrpcClose() { onGrpcCloseWithStatus(Grpc::Status::Aborted); } |
There was a problem hiding this comment.
I was thinking to also expend the status to onGrpcClose method, but this solution is better. Thanks for adding this support.
) ext_proc: propagate detailed GRPC status for fail open Commit Message: Propagate detailed GRPC status for fail open rather than always ABORT. In order to have a better understanding of what is causing a request to fail we should log the GRPC status even if fail open is being used. Additional Description: For backwards compatibility this CL uses optional parameters for call_status with a default value of Grpc::Status::Aborted. Risk Level: Low Testing: Added a unit test within ext_proc_integration_test.cc to validate the logged call_status changed accordingly. I did some additional unit testing within the Google codebase for products that use ext_proc. Docs Changes: N/A Release Notes: If failure_mode_allowed is true, save the grpc failure status code returned from the ext_proc server in the filter state. Previously all fail-open cases would return call_status Grpc::Status::Aborted. Platform Specific Features: N/A Signed-off-by: Melissa Ginaldi <meginaldi@google.com> --------- Signed-off-by: Melissa Ginaldi <mginaldi@google.com> Signed-off-by: Matthew McLeod <mail@matthewmcleod.co.uk>
ext_proc: propagate detailed GRPC status for fail open
Commit Message: Propagate detailed GRPC status for fail open rather than always ABORT. In order to have a better understanding of what is causing a request to fail we should log the GRPC status even if fail open is being used.
Additional Description: For backwards compatibility this CL uses optional parameters for call_status with a default value of Grpc::Status::Aborted.
Risk Level: Low
Testing: Added a unit test within ext_proc_integration_test.cc to validate the logged call_status changed accordingly. I did some additional unit testing within the Google codebase for products that use ext_proc.
Docs Changes: N/A
Release Notes: If failure_mode_allowed is true, save the grpc failure status code returned from the ext_proc server in the filter state. Previously all fail-open cases would return call_status Grpc::Status::Aborted.
Platform Specific Features: N/A
Signed-off-by: Melissa Ginaldi meginaldi@google.com