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

accesslogs: add CEL-based extension filter #18363

Merged
merged 20 commits into from
Dec 2, 2021

Conversation

douglas-reid
Copy link
Contributor

Commit Message: add CEL-based extension filter for access logging
Additional Description: This PR establishes the ability to filter access log production via CEL expressions over the set of Envoy attributes. This can simply the creation of Envoy access log filters, allowing complex tailoring.

Risk Level: low
Testing: unit

Signed-off-by: Douglas Reid douglas-reid@users.noreply.github.com

@repokitteh-read-only
Copy link

CC @envoyproxy/api-shepherds: Your approval is needed for changes made to api/envoy/.
envoyproxy/api-shepherds assignee is @markdroth
CC @envoyproxy/api-watchers: FYI only for changes made to api/envoy/.

🐱

Caused by: #18363 was opened by douglas-reid.

see: more, trace.

@phlax
Copy link
Member

phlax commented Sep 30, 2021

hi @douglas-reid you will need to ensure that all files end with a newline (as opposed to an empty line)

you probably want to set your editor to ensure

  • newline endings
  • no mixed tabs/spaces
  • no trailing whitespace

@douglas-reid
Copy link
Contributor Author

hi @douglas-reid you will need to ensure that all files end with a newline (as opposed to an empty line)

@phlax thanks for the quick response. i had hoped the clang-format steps were taking care of that stuff. I've updated all the files now I believe.

@repokitteh-read-only repokitteh-read-only bot added the deps Approval required for changes to Envoy's external dependencies label Oct 1, 2021
@repokitteh-read-only
Copy link

CC @envoyproxy/dependency-shepherds: Your approval is needed for changes made to (bazel/.*repos.*\.bzl)|(bazel/dependency_imports\.bzl)|(api/bazel/.*\.bzl)|(.*/requirements\.txt)|(.*\.patch).

🐱

Caused by: #18363 was synchronize by douglas-reid.

see: more, trace.

@douglas-reid douglas-reid force-pushed the cel-log-filter branch 2 times, most recently from 7267144 to e803ad9 Compare October 1, 2021 04:06
@phlax
Copy link
Member

phlax commented Oct 1, 2021

i had hoped the clang-format steps were taking care of that stuff.

these 3 formatting tests are language-agnostic, so happen before and separately to any clang formatting checks

I've updated all the files now I believe.

there is still a couple with newline issues - my strong recommendation would be to set your editor to automatically fix these 3 issues on save

@markdroth
Copy link
Contributor

/lgtm api

@repokitteh-read-only repokitteh-read-only bot removed the api label Oct 1, 2021
@douglas-reid
Copy link
Contributor Author

there is still a couple with newline issues - my strong recommendation would be to set your editor to automatically fix these 3 issues on save

thanks for your patience. I thought I had done that, but must have missed a setting somewhere. hopefully, this should be resolved now (based on local runs of glint)

@douglas-reid
Copy link
Contributor Author

/retest

@repokitteh-read-only
Copy link

Retrying Azure Pipelines:
Retried failed jobs in: envoy-presubmit

🐱

Caused by: a #18363 (comment) was created by @douglas-reid.

see: more, trace.

@douglas-reid douglas-reid force-pushed the cel-log-filter branch 2 times, most recently from d9c43e9 to a3f3f5c Compare October 7, 2021 15:16
@douglas-reid
Copy link
Contributor Author

/retest

@repokitteh-read-only
Copy link

Retrying Azure Pipelines:
Retried failed jobs in: envoy-presubmit

🐱

Caused by: a #18363 (comment) was created by @douglas-reid.

see: more, trace.

@douglas-reid
Copy link
Contributor Author

@phlax all the tests are passing now.

@phlax
Copy link
Member

phlax commented Oct 11, 2021

ill have to pass it on for final review to one of the other maintainers (cc @dio @htuch )

i think you will need to merge main (version history changed with last release)

also im wondering if its necessary to change the requirements.txt file - afaict the additional dependencies arent used (also the added dependences are already available from base_pip3 )

@kyessenov
Copy link
Contributor

LGTM.

Signed-off-by: Douglas Reid <douglas-reid@users.noreply.github.com>
Signed-off-by: Douglas Reid <douglas-reid@users.noreply.github.com>
Signed-off-by: Douglas Reid <douglas-reid@users.noreply.github.com>
Signed-off-by: Douglas Reid <douglas-reid@users.noreply.github.com>
Signed-off-by: Douglas Reid <douglas-reid@users.noreply.github.com>
Signed-off-by: Douglas Reid <douglas-reid@users.noreply.github.com>
Signed-off-by: Douglas Reid <douglas-reid@users.noreply.github.com>
Signed-off-by: Douglas Reid <douglas-reid@users.noreply.github.com>
Signed-off-by: Douglas Reid <douglas-reid@users.noreply.github.com>
@douglas-reid
Copy link
Contributor Author

ok. rebased and pushed. hopefully 100% ready at this point.

zuercher
zuercher previously approved these changes Nov 18, 2021
Copy link
Member

@zuercher zuercher left a comment

Choose a reason for hiding this comment

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

Thanks.

@markdroth This needs another API bump since we fixed the extension category.
@moderation Could you review the dependency change (I don't think it's really a dependency change other than allowing access for a new extension).

@moderation
Copy link
Contributor

/lgtm deps

@repokitteh-read-only repokitteh-read-only bot removed the deps Approval required for changes to Envoy's external dependencies label Nov 18, 2021
@zuercher
Copy link
Member

@envoyproxy/api-shepherds I think this is waiting on a re-review.

@douglas-reid
Copy link
Contributor Author

@zuercher It looks like a conflict has appeared again in the intervening time.

What is the right way to get this in? Should I rebase again and start the wait over, or should I hold off until the final approval is granted again before rebasing?

@zuercher
Copy link
Member

zuercher commented Dec 1, 2021

Don't rebase it. Just merge main and fix the conflict. We'll squash the commit to master. I'll try another means to get api re-approval.

@zuercher
Copy link
Member

zuercher commented Dec 1, 2021

/lgtm api

@zuercher zuercher removed the api label Dec 1, 2021
@zuercher
Copy link
Member

zuercher commented Dec 1, 2021

(I don't think that worked, unfortunately.)

@markdroth
Copy link
Contributor

/lgtm api

Signed-off-by: Douglas Reid <douglas-reid@users.noreply.github.com>
@repokitteh-read-only repokitteh-read-only bot added the deps Approval required for changes to Envoy's external dependencies label Dec 2, 2021
@douglas-reid
Copy link
Contributor Author

@zuercher ok. merged and pushed. ptal.

@zuercher zuercher merged commit 77ca6cc into envoyproxy:main Dec 2, 2021
@douglas-reid
Copy link
Contributor Author

Thanks everyone, for your patience and guidance on this PR. Excited to have the capability merged!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
deps Approval required for changes to Envoy's external dependencies
Projects
None yet
Development

Successfully merging this pull request may close these issues.

9 participants