feat: Fix Ceph version lookup for newer releases of Ceph #21279
+29
−30
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
What does this PR do?
Ceph made various breaking changes to the status output in the
octopus
release in 2020, including (but not limited to) the entiremon_status
command being removed.The DataDog check as-was only checked if the release was exactly 'octopus', not any later release as well. Given that
octopus
is now 5 years old, and there doesn't seem to be anything in the responses that gives a semantic version or similar to numerically compare, it's easiest to just assume that we will get stats the New Way ™️, and also try any old way if themon_status
content exists in theraw
map and the new way failed.End-result functionality, on both pre-octopus and octopus, is identical to pre-PR. Hence existing tests still pass. Behaviour post-octopus is now correct.
Motivation
I configured the
ceph
integration for our cluster, and discovered on the dashboard that we were missing theceph_fsid
tag that is exposed across all the graphs ascluster
, so I went digging for why that was and if there were any other details of the integration that might be similarly missing.Review checklist (to be filled by reviewers)
qa/skip-qa
label if the PR doesn't need to be tested during QA.backport/<branch-name>
label to the PR and it will automatically open a backport PR once this one is merged