This is a great start, thank you! Basically I can look through the code to get the keys I need. But maybe I'm approaching this task wrong? Maybe there's already some better solution to monitor cluster health details? ср, 16 июн. 2021 г. в 02:47, Anthony D'Atri <anthony.datri@gmail.com>:
Before Luminous, mon clock skew was part of the health status JSON. With Luminous and later releases, one has to invoke a separate command to get the info.
This is a royal PITA for monitoring / metrics infrastructure and I’ve never seen a reason why it was done.
You might find the code here https://github.com/digitalocean/ceph_exporter useful. Note that there are multiple branches, which can be confusing.
On Jun 15, 2021, at 4:21 PM, Vladimir Prokofev <v@prokofev.me> wrote:
Good day.
I'm writing some code for parsing output data for monitoring purposes. The data is that of "ceph status -f json", "ceph df -f json", "ceph osd perf -f json" and "ceph osd pool stats -f json". I also need support for all major CEPH releases, starting with Jewel till Pacific.
What I've stumbled upon is that: - keys in JSON output are not present if there's no appropriate data. For example the key ['pgmap', 'read_bytes_sec'] will not be present in "ceph status" output if there's no read activity in the cluster; - some keys changed between versions. For example ['health']['status'] key is not present in Jewel, but is available in all the following versions; vice-versa, key ['osdmap', 'osdmap'] is not present in Pacific, but is in all the previous versions.
So I need to get a list of all possible keys for all CEPH releases. Any ideas how this can be achieved? My only thought atm is to build a "failing" cluster with all the possible states and get a reference data out of it. Not only this is tedious work since it requires each possible cluster version, but it is also prone for error. Is there any publicly available JSON schema for output? _______________________________________________ ceph-users mailing list -- ceph-users@ceph.io To unsubscribe send an email to ceph-users-leave@ceph.io