-
Notifications
You must be signed in to change notification settings - Fork 4.9k
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
[Metricbeat] Add Linux pressure metricset #27355
Conversation
💚 Build Succeeded
Expand to view the summary
Build stats
Test stats 🧪
Trends 🧪💚 Flaky test reportTests succeeded. Expand to view the summary
Test stats 🧪
|
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.
This is looking good! Just a few small things, mostly beats cruft, we need to change. If you want, I can take the PR over from here; I don't want to make you feel like you're obligated to spend your time coding to the various metricbeat idioms.
type: group | ||
description: Linux pressure stall information | ||
fields: | ||
- name: cpu.some.10 |
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.
In system/process
cgroup data, we're reporting these as 10.pct
and so on. We'll also need to add format: percent
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.
Cool. I tried to follow similar conventions for total
, in that it becomes total.time.us
- does this make sense here?
Not a problem - I think I've addressed the comments so far but feel free to make any small changes if I've otherwise messed things up there. |
Real quick, you'll need to run |
Hmm.. I tried this but I don't see any changes. Any ideas?
|
@b-deam I think you'll need to re-merge upstream changes? A few things may have changed in the doc build. |
🤦 - ofc. Done. 🤞 tests are good! |
Pinging @elastic/integrations (Team:Integrations) |
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.
I re-ran a test to make sure it all looked good and noticed that I'd messed up the fields/mapping so that the metrics were actually recorded as:
This should be fixed now.. |
Thanks for all the help @fearful-symmetry! |
* Adds new linux pressure metricset * Tidy up code * Be consistent in default config * Run integration tests * Make update * make update v3 * Address comments * Format tests * Remove unused imports from tests * Mage format * Update changelog * simplify loop * Fix fields/mapping
* Adds new linux pressure metricset * Tidy up code * Be consistent in default config * Run integration tests * Make update * make update v3 * Address comments * Format tests * Remove unused imports from tests * Mage format * Update changelog * simplify loop * Fix fields/mapping (cherry picked from commit e49f257) # Conflicts: # metricbeat/docs/modules_list.asciidoc # metricbeat/module/linux/fields.go # metricbeat/module/linux/pressure/pressure.go
* Adds new linux pressure metricset * Tidy up code * Be consistent in default config * Run integration tests * Make update * make update v3 * Address comments * Format tests * Remove unused imports from tests * Mage format * Update changelog * simplify loop * Fix fields/mapping (cherry picked from commit e49f257) # Conflicts: # metricbeat/docs/fields.asciidoc # metricbeat/docs/modules/linux.asciidoc # metricbeat/docs/modules/linux/pressure.asciidoc # metricbeat/docs/modules_list.asciidoc # metricbeat/include/list_common.go # metricbeat/metricbeat.reference.yml # metricbeat/module/linux/_meta/config.yml # metricbeat/module/linux/fields.go # metricbeat/module/linux/pressure/pressure.go # metricbeat/module/linux/pressure/pressure_test.go # metricbeat/modules.d/linux.yml.disabled # x-pack/metricbeat/metricbeat.reference.yml
) * [Metricbeat] Add Linux pressure metricset (#27355) * Adds new linux pressure metricset * Tidy up code * Be consistent in default config * Run integration tests * Make update * make update v3 * Address comments * Format tests * Remove unused imports from tests * Mage format * Update changelog * simplify loop * Fix fields/mapping (cherry picked from commit e49f257) # Conflicts: # metricbeat/docs/fields.asciidoc # metricbeat/docs/modules/linux.asciidoc # metricbeat/docs/modules/linux/pressure.asciidoc # metricbeat/docs/modules_list.asciidoc # metricbeat/include/list_common.go # metricbeat/metricbeat.reference.yml # metricbeat/module/linux/_meta/config.yml # metricbeat/module/linux/fields.go # metricbeat/module/linux/pressure/pressure.go # metricbeat/module/linux/pressure/pressure_test.go # metricbeat/modules.d/linux.yml.disabled # x-pack/metricbeat/metricbeat.reference.yml * fix merge Co-authored-by: Brad Deam <[email protected]> Co-authored-by: Alex Kristiansen <[email protected]>
…9036) * [Metricbeat] Add Linux pressure metricset (#27355) * Adds new linux pressure metricset * Tidy up code * Be consistent in default config * Run integration tests * Make update * make update v3 * Address comments * Format tests * Remove unused imports from tests * Mage format * Update changelog * simplify loop * Fix fields/mapping (cherry picked from commit e49f257) # Conflicts: # metricbeat/docs/modules_list.asciidoc # metricbeat/module/linux/fields.go # metricbeat/module/linux/pressure/pressure.go * Fix conflicts * Formatting Co-authored-by: Brad Deam <[email protected]> Co-authored-by: Brad Deam <[email protected]>
What does this PR do?
This PR aims to introduce an additional metricset that collects Pressure Stall Information (PSI) for CPU, Memory, and IO. These are available from kernel >=4.20.
These metrics are incredibly useful for debugging system performance, and more can be read about these metrics below:
Why is it important?
These are valuable OS metrics that are useful for both debugging and monitoring system performance.
Checklist
CHANGELOG.next.asciidoc
orCHANGELOG-developer.next.asciidoc
.Author's Checklist
How to test this PR locally
ubuntu2004
works fromVagrantfile
) that:/proc/pressure
is available onRelated issues