-
Notifications
You must be signed in to change notification settings - Fork 664
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
Field descriptors in OCP SMART Log Page are different to those in standard SMART Log Page #2577
Comments
Changing the existing output is likely to cause regression, which I really like to avoid. We could introduce a output format version flag so the user can decide which version should be used. Luckily we have a plugin interface for this already in place. Obvious it means additional maintenance overhead. When we do the next major version update we just rip out the older version then. |
Note there is a conversation going on in prometheus-community/node-exporter-textfile-collector-scripts#228 that also deals with JSON output format changes and some issues around per controller and per namespace SMART log pages. |
@igaw I will try and put together a PR for this in the next few days. I've noted your comments above and will do something that aligns with those. |
Cool. You don't need to go overboard in the first version. I think we have to figure out how to make this maintainable somehow without duplicating too much. |
The current OCP JSON format for the SMART extended log page is not condusive to metric collection via tools like Prometheus. So we add a new output mode that uses all lower case and underscores (instead of spaces). This should help with metric collection. Fixes linux-nvme#2577. Signed-off-by: Stephen Bates <[email protected]>
The current OCP JSON format for the SMART extended log page is not condusive to metric collection via tools like Prometheus. So we add a new output mode that uses all lower case and underscores (instead of spaces). This should help with metric collection. At the same time we clean up some of the field names. Note documentation has NOT yet been updated. Fixes linux-nvme#2577. Signed-off-by: Stephen Bates <[email protected]>
@igaw I threw something together that adds a |
Thanks for the PR. I like where this is going. I suggest though, to really introduce a |
Hmm, I think it should be called |
Thanks @igaw. I will update the PR with that and include the documentation update. Stay tuned! |
The current OCP JSON format for the SMART extended log page is not condusive to metric collection via tools like Prometheus. So we add a new output mode that uses all lower case and underscores (instead of spaces). This should help with metric collection. At the same time we clean up some of the field names. We add a new argument (--output-format-version) to allow us to select which output version we want. Documentation updated to reflect this change. Fixes linux-nvme#2577. Signed-off-by: Stephen Bates <[email protected]>
The current OCP JSON format for the SMART extended log page is not condusive to metric collection via tools like Prometheus. So we add a new output mode that uses all lower case and underscores (instead of spaces). This should help with metric collection. At the same time we clean up some of the field names. We add a new argument (--output-format-version) to allow us to select which output version we want. Documentation updated to reflect this change. Fixes linux-nvme#2577. Signed-off-by: Stephen Bates <[email protected]>
@igaw can you take a look at my updated branch? I think I caught your requests and added a documentation update. |
Looks pretty good to me. As usual, Steven is updating the same lines right now. As your PR came before #2604. If this is okay everyone I'd merge this one first and Steven needs to update his PR. Hope this is okay. Sorry Steven. @sc108-lee |
I'm wondering if we should mark/treat the output of |
@igaw I can add an experimental comment to the top of the JSON output when version 2 is selected. |
JSON doesn't allow comments, as far I know. That means it would need something like suggest here. Not sure about this approach though. Maybe just mention the experimental status in documentation? |
I like the documentation idea @igaw. I will do something along those lines. |
The current OCP JSON format for the SMART extended log page is not condusive to metric collection via tools like Prometheus. So we add a new output mode that uses all lower case and underscores (instead of spaces). This should help with metric collection. At the same time we clean up some of the field names. We add a new argument (--output-format-version) to allow us to select which output version we want. Documentation updated to reflect this change and mark this as experimental. Fixes linux-nvme#2577. Signed-off-by: Stephen Bates <[email protected]>
@igaw take a look at the new commit and let me know if it works for you now. |
The current OCP JSON format for the SMART extended log page is not condusive to metric collection via tools like Prometheus. So we add a new output mode that uses all lower case and underscores (instead of spaces). This should help with metric collection. At the same time we clean up some of the field names. We add a new argument (--output-format-version) to allow us to select which output version we want. Documentation updated to reflect this change and mark this as experimental. Fixes linux-nvme#2577. Signed-off-by: Stephen Bates <[email protected]>
Looks good to me. Please send a PR so I can merge it. Let's see else we have to change so that the smart log output is easy to process by any monitoring system. |
@igaw PR sent. Thanks! |
The current OCP JSON format for the SMART extended log page is not condusive to metric collection via tools like Prometheus. So we add a new output mode that uses all lower case and underscores (instead of spaces). This should help with metric collection. At the same time we clean up some of the field names. We add a new argument (--output-format-version) to allow us to select which output version we want. Documentation updated to reflect this change and mark this as experimental. Fixes linux-nvme#2577. Signed-off-by: Stephen Bates <[email protected]>
The current OCP JSON format for the SMART extended log page is not condusive to metric collection via tools like Prometheus. So we add a new output mode that uses all lower case and underscores (instead of spaces). This should help with metric collection. At the same time we clean up some of the field names. We add a new argument (--output-format-version) to allow us to select which output version we want. Documentation updated to reflect this change and mark this as experimental. Fixes #2577. Signed-off-by: Stephen Bates <[email protected]>
There is a lack of consistency between the field descriptors in the standard SMART log page (which uses all lower case and underscores) and the OCP SMART extended log page (which uses mixed cases and white spaces). This is rather annoying and also poses a bit of a challenge when trying to scrape the OCP metrics via a Prometheus node-exporter text collector.
I think it would be lovely to alter the format of the OCP output (both stdout and JSON) but I am concerned that might cause an issue for people who have already written tools that parse the existing log page output. So I am creating this issue so we can discuss if such a change is welcome or not.
versus
Note this is somewhat related to #2189 but is different enough that I wanted to create a new issue. Depending on how this resolves it may allow us to close the other issue.
The text was updated successfully, but these errors were encountered: