Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Error Pathway #14791

Closed
goaway opened this issue Jan 22, 2021 · 2 comments · Fixed by #15172
Closed

Error Pathway #14791

goaway opened this issue Jan 22, 2021 · 2 comments · Fixed by #15172
Assignees
Labels
area/http design proposal Needs design doc/proposal before implementation enhancement Feature requests. Not bugs or questions. no stalebot Disables stalebot from closing an issue

Comments

@goaway
Copy link
Contributor

goaway commented Jan 22, 2021

Title: Introduce error pathway to optionally replace local reply behavior when Envoy is built and run as a library.
Description: This issue is primarily in support of Envoy Mobile, but it applies in any case where Envoy is built into another binary, and it's desirable for errors to be surfaced via a code path that can be handled by the enclosed binary, as opposed to via locally-generated HTTP replies.

Currently, Envoy Mobile maps non-2xx local replies to its error pathway, but this mechanism is brittle and introduces numerous edge cases, especially with filters. The proposal here is to replace calls that use sendLocalReply to surface errors with a more generic and configurable raiseError interface. The default behavior for this interface would still be to generate a local reply, maintaining Envoy's existing behavior. In the case of Envoy Mobile (and other library usage), however, this behavior can then be overridden to surface the error directly via a public error handling API.

@goaway goaway added enhancement Feature requests. Not bugs or questions. triage Issue requires triage labels Jan 22, 2021
@goaway
Copy link
Contributor Author

goaway commented Jan 22, 2021

cc @snowp @alyssawilk

@snowp snowp added area/http design proposal Needs design doc/proposal before implementation and removed triage Issue requires triage labels Jan 22, 2021
@github-actions
Copy link

This issue has been automatically marked as stale because it has not had activity in the last 30 days. It will be closed in the next 7 days unless it is tagged "help wanted" or "no stalebot" or other activity occurs. Thank you for your contributions.

@github-actions github-actions bot added the stale stalebot believes this issue/PR has not been touched recently label Feb 22, 2021
@alyssawilk alyssawilk added no stalebot Disables stalebot from closing an issue and removed stale stalebot believes this issue/PR has not been touched recently labels Feb 22, 2021
@alyssawilk alyssawilk self-assigned this Feb 24, 2021
alyssawilk added a commit that referenced this issue Mar 8, 2021
Risk Level: low (no-op for most filters)
Testing: new integration test, unit tests
Docs Changes: n/a
Release Notes: n/a
Fixes #14791
Signed-off-by: Alyssa Wilk <alyssar@chromium.org>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/http design proposal Needs design doc/proposal before implementation enhancement Feature requests. Not bugs or questions. no stalebot Disables stalebot from closing an issue
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants