-
Notifications
You must be signed in to change notification settings - Fork 35
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
NETOBSERV-2005: Support multiple flow filter rules using json fmt string #473
Conversation
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## main #473 +/- ##
==========================================
- Coverage 29.68% 29.41% -0.28%
==========================================
Files 51 51
Lines 4915 4947 +32
==========================================
- Hits 1459 1455 -4
- Misses 3350 3382 +32
- Partials 106 110 +4
Flags with carried forward coverage won't be shown. Click here to find out more.
|
/ok-to-test |
New image: It will expire after two weeks. To deploy this build, run from the operator repo, assuming the operator is running: USER=netobserv VERSION=1ec52cf make set-agent-image |
@msherif1234: This pull request references NETOBSERV-2005 which is a valid jira issue. Warning: The referenced jira issue has an invalid target version for the target branch this PR targets: expected the story to target the "4.19.0" version, but no target version was set. In response to this:
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the openshift-eng/jira-lifecycle-plugin repository. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Minor comments.
/lgtm
d95862c
to
3eef923
Compare
/ok-to-test |
New image: It will expire after two weeks. To deploy this build, run from the operator repo, assuming the operator is running: USER=netobserv VERSION=34179d9 make set-agent-image |
@msherif1234: This pull request references NETOBSERV-2005 which is a valid jira issue. Warning: The referenced jira issue has an invalid target version for the target branch this PR targets: expected the story to target the "4.19.0" version, but no target version was set. In response to this:
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the openshift-eng/jira-lifecycle-plugin repository. |
/ok-to-test |
New image: It will expire after two weeks. To deploy this build, run from the operator repo, assuming the operator is running: USER=netobserv VERSION=6139f89 make set-agent-image |
2ed36dc
to
3a7b53a
Compare
/ok-to-test |
New image: It will expire after two weeks. To deploy this build, run from the operator repo, assuming the operator is running: USER=netobserv VERSION=141b6ac make set-agent-image |
/ok-to-test |
New image: It will expire after two weeks. To deploy this build, run from the operator repo, assuming the operator is running: USER=netobserv VERSION=f691cf5 make set-agent-image |
aeb0749
to
24151f9
Compare
/ok-to-test |
New image: It will expire after two weeks. To deploy this build, run from the operator repo, assuming the operator is running: USER=netobserv VERSION=22832d2 make set-agent-image |
Signed-off-by: Mohamed Mahmoud <[email protected]>
Signed-off-by: Mohamed Mahmoud <[email protected]>
Signed-off-by: Mohamed Mahmoud <[email protected]>
24151f9
to
5c07db3
Compare
/ok-to-test |
New image: It will expire after two weeks. To deploy this build, run from the operator repo, assuming the operator is running: USER=netobserv VERSION=405541b make set-agent-image |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM, thanks @msherif1234 !
/approve |
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: msherif1234 The full list of commands accepted by this bot can be found here. The pull request process is described here
Needs approval from an approver in each of these files:
Approvers can indicate their approval by writing |
@@ -77,15 +79,7 @@ static inline void update_dns(additional_metrics *extra_metrics, pkt_info *pkt, | |||
} | |||
|
|||
static inline int flow_monitor(struct __sk_buff *skb, u8 direction) { | |||
// If sampling is defined, will only parse 1 out of "sampling" flows |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
we could have optimized this, and if no filter_sampling is defined, run the global sampling check earlier. Keep the late sampling check only when there filter-based sampling defined.
So when user runs with no filter-sampling defined, but just global sampling, it's more efficient and doesn't parse headers.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Running some perf, while user-space metrics look unchanged, using bpftop I do see a consequent increase in CPU in kernel, around +100%, when using global sampling=50 and no filter sampling, compared to main baseline before this PR was merged.
I've put some numbers here: https://docs.google.com/spreadsheets/d/1BzrAXr-XEWjizBf-tFhtHcKMNyQOvvW2HH4zXeoDxE8/edit?gid=0#gid=0
Description
Example config and the flow filter map content
Dependencies
n/a
Checklist
If you are not familiar with our processes or don't know what to answer in the list below, let us know in a comment: the maintainers will take care of that.