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

quic: add listener config option to attach connection debug visitors #34036

Merged
merged 6 commits into from
May 31, 2024

Conversation

wlampert
Copy link
Contributor

@wlampert wlampert commented May 9, 2024

Commit Message: Add a way to configure a quic connection debug visitor factory that will be used to attach a debug visitor to all quic connections on the listener. Adds an interface for this new type of factory.
Additional Description:
Risk Level: Low
Testing: Added new tests and modified existing tests in /test/common/quic. Also performed manual testing on a real machine and sent traffic to it using quic_client.
Docs Changes: Update envoy.config.listener.v3.quic_config.proto inline.
Release Notes: N/A
Platform Specific Features: N/A
[Optional Runtime guard:]
[Optional Fixes #Issue]
[Optional Fixes commit #PR or SHA]
[Optional Deprecated:]
[Optional API Considerations:]

Add a way to configure a quic connection debug visitor factory that will
be used to attach a debug visitor to all quic connections on the
listener. Adds an interface for this new type of factory.

Signed-off-by: Will Lampert <wlampert@google.com>
Copy link

CC @envoyproxy/api-shepherds: Your approval is needed for changes made to (api/envoy/|docs/root/api-docs/).
envoyproxy/api-shepherds assignee is @wbpcode
CC @envoyproxy/api-watchers: FYI only for changes made to (api/envoy/|docs/root/api-docs/).

🐱

Caused by: #34036 was opened by wlampert.

see: more, trace.

@wlampert
Copy link
Contributor Author

wlampert commented May 9, 2024

/assign @RyanTheOptimist

Copy link
Contributor

@RyanTheOptimist RyanTheOptimist left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks great! How plausible would it be to add an integration test to quic_http_integration_test.cc? That'd be a good way to confirm that the plumbing all works as expected.

@RyanTheOptimist
Copy link
Contributor

/wait

…extension.

Additionally, extend debug visitor constructor to take in a reference to
the connection's StreamInfo.

Signed-off-by: Will Lampert <wlampert@google.com>
Signed-off-by: Will Lampert <wlampert@google.com>
Signed-off-by: Will Lampert <wlampert@google.com>
Signed-off-by: Will Lampert <wlampert@google.com>
@wlampert
Copy link
Contributor Author

/retest

@RyanTheOptimist
Copy link
Contributor

Looks like an MSAN failure:

[  FAILED  ] QuicHttpIntegrationTests/QuicHttpIntegrationTest.ConnectionDebugVisitor/IPv4, where GetParam() = 4-byte object <00-00 00-00>

Signed-off-by: Will Lampert <wlampert@google.com>
Copy link
Contributor

@RyanTheOptimist RyanTheOptimist left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nice! This looks great.

@RyanTheOptimist
Copy link
Contributor

@wbpcode friendly ping for the API review.

Copy link
Member

@wbpcode wbpcode left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

/lgtm api

@RyanTheOptimist RyanTheOptimist merged commit 0c28205 into envoyproxy:main May 31, 2024
54 checks passed
@alyssawilk
Copy link
Contributor

This looks like it's causing flakes - Will can you triage?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants