]>
git.proxmox.com Git - ceph.git/blob - ceph/src/brag/server/ceph_brag/json.py
1 from pecan
.jsonify
import jsonify
2 from ceph_brag
.model
import db
4 @jsonify.register(db
.version_info
)
5 def jsonify_version(vi
):
7 version_number
=vi
.version_number
,
8 version_date
=str(vi
.version_date
)
11 @jsonify.register(db
.cluster_info
)
12 def jsonify_cluster_info(ci
):
15 organization
=ci
.organization
,
16 email
=ci
.contact_email
,
17 cluster_name
=ci
.cluster_name
,
18 cluster_creation_date
=str(ci
.cluster_creation_date
),
19 num_versions
=ci
.num_versions
22 @jsonify.register(db
.components_info
)
23 def jsonify_components_info(comps
):
25 num_data_bytes
=comps
.num_data_bytes
,
26 num_bytes_total
=comps
.num_bytes_total
,
27 num_osds
=comps
.num_osds
,
28 num_objects
=comps
.num_objects
,
29 num_pgs
=comps
.num_pgs
,
30 num_pools
=comps
.num_pools
,
31 num_mdss
=comps
.num_mdss
,
32 num_mons
=comps
.num_mons
)
34 @jsonify.register(db
.crush_types
)
35 def jsonify_crush_types(crush
):
36 return dict(type=crush
.crush_type
,
37 count
=crush
.crush_count
)
39 @jsonify.register(db
.pools_info
)
40 def jsonify_pools_info(pool
):
41 return dict(size
=pool
.pool_rep_size
,
45 @jsonify.register(db
.os_info
)
46 def jsonify_os_info(value
):
47 return dict(os
=value
.os
,
50 @jsonify.register(db
.kernel_versions
)
51 def jsonify_kernel_versions(value
):
52 return dict(version
=value
.version
,
55 @jsonify.register(db
.kernel_types
)
56 def jsonify_kernel_types(value
):
57 return dict(type=value
.type,
60 @jsonify.register(db
.distros
)
61 def jsonify_distros(value
):
62 return dict(distro
=value
.distro
,
65 @jsonify.register(db
.cpus
)
66 def jsonify_cpus(value
):
67 return dict(cpu
=value
.cpu
,
70 @jsonify.register(db
.cpu_archs
)
71 def jsonify_cpu_archs(value
):
72 return dict(arch
=value
.arch
,
75 @jsonify.register(db
.ceph_versions
)
76 def jsonify_ceph_versions(value
):
77 return dict(version
=value
.version
,
80 @jsonify.register(db
.sysinfo
)
81 def jsonify_sysinfo(value
):
85 retval
['os_info'] = value
.os
87 retval
['kernel_versions'] = value
.kern_vers
89 retval
['kernel_types'] = value
.kern_types
91 retval
['distros'] = value
.distros
93 retval
['cpus'] = value
.cpus
95 retval
['cpu_archs'] = value
.cpu_archs
97 retval
['ceph_versions'] = value
.ceph_vers
101 @jsonify.register(db
.brag
)
103 ownership
= {'organization':b
.ci
.organization
,
104 'description':b
.ci
.description
,
105 'email':b
.ci
.contact_email
,
106 'name':b
.ci
.cluster_name
108 return dict(uuid
=b
.ci
.uuid
,
109 cluster_creation_date
=str(b
.ci
.cluster_creation_date
),
110 components_count
=b
.comps
,
113 pool_metadata
=b
.pools
,