From 4ac9c7ba2ea7630e1114085feb339d5499fec84f Mon Sep 17 00:00:00 2001 From: Xavier Serrano Date: Wed, 25 Jul 2018 10:49:58 +0200 Subject: [PATCH] Use JSON format to obtain data from 'ceph -s' 'ceph -s' text output format strongly depends upon ceph version. Using JSON format to obtain data works across different ceph versions. --- plugins/ceph/ceph_osd | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/plugins/ceph/ceph_osd b/plugins/ceph/ceph_osd index 9d208b53..f8feaf62 100755 --- a/plugins/ceph/ceph_osd +++ b/plugins/ceph/ceph_osd @@ -44,6 +44,6 @@ if [ "$1" = "config" ]; then exit 0 fi -echo "osds.value $(ceph -s | grep osdmap | awk '{ print $3 }')" -echo "up.value $(ceph -s | grep osdmap | awk '{ print $5 }')" -echo "in.value $(ceph -s | grep osdmap | awk '{ print $7 }')" +echo "osds.value $(ceph -s --format=json | jq '.osdmap.osdmap.num_osds')" +echo "up.value $(ceph -s --format=json | jq '.osdmap.osdmap.num_up_osds')" +echo "in.value $(ceph -s --format=json | jq '.osdmap.osdmap.num_in_osds')"