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

filebeat/input/{tcp,udp}: collect rx and drops metrics for unspecified addresses #35111

Merged
merged 1 commit into from
Apr 18, 2023

Conversation

efd6
Copy link
Contributor

@efd6 efd6 commented Apr 17, 2023

What does this PR do?

Previously we were accepting exact (case-folded) address matches only, resulting in loss of receive queue and drops metrics when the inputs were listening on 0.0.0.0. This change fixes that by collecting these values from all /proc lines that have a matching port when the address is unspecified.

Why is it important?

Patches an observability hole.

Checklist

  • My code follows the style guidelines of this project
  • I have commented my code, particularly in hard-to-understand areas
  • I have made corresponding changes to the documentation
  • I have made corresponding change to the default configuration files
  • I have added tests that prove my fix is effective or that my feature works
  • I have added an entry in CHANGELOG.next.asciidoc or CHANGELOG-developer.next.asciidoc.

Author's Checklist

  • [ ]

How to test this PR locally

Related issues

Use cases

Screenshots

Logs

@efd6 efd6 requested a review from a team April 17, 2023 21:33
@efd6 efd6 self-assigned this Apr 17, 2023
@botelastic botelastic bot added needs_team Indicates that the issue/PR needs a Team:* label and removed needs_team Indicates that the issue/PR needs a Team:* label labels Apr 17, 2023
…d addresses

Previously we were accepting exact (case-folded) address matches only,
resulting in loss of receive queue and drops metrics when the inputs
were listening on 0.0.0.0. This change fixes that by collecting these
values from all /proc lines that have a matching port when the address
is unspecified.
@efd6 efd6 force-pushed the filebeat-unspecified-addrs-metrics branch from 3bfaaf9 to 95f6656 Compare April 17, 2023 21:35
@efd6 efd6 marked this pull request as ready for review April 17, 2023 21:59
@efd6 efd6 requested a review from a team as a code owner April 17, 2023 21:59
@efd6 efd6 requested review from rdner and leehinman and removed request for a team April 17, 2023 21:59
@elasticmachine
Copy link
Collaborator

Pinging @elastic/security-external-integrations (Team:Security-External Integrations)

@elasticmachine
Copy link
Collaborator

💚 Build Succeeded

the below badges are clickable and redirect to their specific view in the CI or DOCS
Pipeline View Test View Changes Artifacts preview preview

Expand to view the summary

Build stats

  • Start Time: 2023-04-17T21:35:25.693+0000

  • Duration: 68 min 22 sec

Test stats 🧪

Test Results
Failed 0
Passed 7643
Skipped 753
Total 8396

💚 Flaky test report

Tests succeeded.

🤖 GitHub comments

Expand to view the GitHub comments

To re-run your PR in the CI, just comment with:

  • /test : Re-trigger the build.

  • /package : Generate the packages and run the E2E tests.

  • /beats-tester : Run the installation tests with beats-tester.

  • run elasticsearch-ci/docs : Re-trigger the docs validation. (use unformatted text in the comment!)

Copy link
Contributor

@leehinman leehinman left a comment

Choose a reason for hiding this comment

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

changes LGTM.

One question, does any of this apply to IPv6? Different file in /proc so just want to double check that we don't have similar bugs waiting for us there.

@efd6
Copy link
Contributor Author

efd6 commented Apr 18, 2023

@leehinman No, it's all v4. We don't handle metrics for v6. This is something that we will probably need to add. The code that's here is readily generalisable for that reason.

@efd6
Copy link
Contributor Author

efd6 commented Apr 18, 2023

@leehinman We will be adding support for v6 in a follow-up.

@efd6 efd6 merged commit 097bd76 into elastic:main Apr 18, 2023
mergify bot pushed a commit that referenced this pull request Apr 18, 2023
…d addresses (#35111)

Previously we were accepting exact (case-folded) address matches only,
resulting in loss of receive queue and drops metrics when the inputs
were listening on 0.0.0.0. This change fixes that by collecting these
values from all /proc lines that have a matching port when the address
is unspecified.

(cherry picked from commit 097bd76)
efd6 added a commit that referenced this pull request Apr 19, 2023
…d addresses (#35111) (#35121)

Previously we were accepting exact (case-folded) address matches only,
resulting in loss of receive queue and drops metrics when the inputs
were listening on 0.0.0.0. This change fixes that by collecting these
values from all /proc lines that have a matching port when the address
is unspecified.

(cherry picked from commit 097bd76)

Co-authored-by: Dan Kortschak <90160302+efd6@users.noreply.github.com>
chrisberkhout pushed a commit that referenced this pull request Jun 1, 2023
…d addresses (#35111)

Previously we were accepting exact (case-folded) address matches only,
resulting in loss of receive queue and drops metrics when the inputs
were listening on 0.0.0.0. This change fixes that by collecting these
values from all /proc lines that have a matching port when the address
is unspecified.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
8.8-candidate backport-v8.7.0 Automated backport with mergify bug Filebeat Filebeat
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants