]> git.proxmox.com Git - ceph.git/blame - ceph/src/test/exporter/test_exporter.cc
update ceph source to reef 18.2.1
[ceph.git] / ceph / src / test / exporter / test_exporter.cc
CommitLineData
1e59de90
TL
1#include "gtest/gtest.h"
2#include "exporter/util.h"
aee94f69 3#include "exporter/DaemonMetricCollector.h"
1e59de90
TL
4
5#include <string>
6#include <vector>
7#include <utility>
8
aee94f69
TL
9typedef std::map<std::string, std::string> labels_t;
10
1e59de90
TL
11// 17.2.6's memento mori:
12// This data was gathered from the python implementation of the promethize method
13// where we transform the path of a counter to a valid prometheus name.
14static std::vector<std::pair<std::string, std::string>> promethize_data = {
15 {"bluefs.alloc_slow_fallback", "ceph_bluefs_alloc_slow_fallback"},
16 {"bluefs.alloc_slow_size_fallback", "ceph_bluefs_alloc_slow_size_fallback"},
17 {"bluefs.alloc_unit_db", "ceph_bluefs_alloc_unit_db"},
18 {"bluefs.alloc_unit_main", "ceph_bluefs_alloc_unit_main"},
19 {"bluefs.alloc_unit_wal", "ceph_bluefs_alloc_unit_wal"},
20 {"bluefs.bytes_written_slow", "ceph_bluefs_bytes_written_slow"},
21 {"bluefs.bytes_written_sst", "ceph_bluefs_bytes_written_sst"},
22 {"bluefs.bytes_written_wal", "ceph_bluefs_bytes_written_wal"},
23 {"bluefs.compact_lat_count", "ceph_bluefs_compact_lat_count"},
24 {"bluefs.compact_lat_sum", "ceph_bluefs_compact_lat_sum"},
25 {"bluefs.compact_lock_lat_count", "ceph_bluefs_compact_lock_lat_count"},
26 {"bluefs.compact_lock_lat_sum", "ceph_bluefs_compact_lock_lat_sum"},
27 {"bluefs.db_total_bytes", "ceph_bluefs_db_total_bytes"},
28 {"bluefs.db_used_bytes", "ceph_bluefs_db_used_bytes"},
29 {"bluefs.log_bytes", "ceph_bluefs_log_bytes"},
30 {"bluefs.logged_bytes", "ceph_bluefs_logged_bytes"},
31 {"bluefs.max_bytes_db", "ceph_bluefs_max_bytes_db"},
32 {"bluefs.max_bytes_slow", "ceph_bluefs_max_bytes_slow"},
33 {"bluefs.max_bytes_wal", "ceph_bluefs_max_bytes_wal"},
34 {"bluefs.num_files", "ceph_bluefs_num_files"},
35 {"bluefs.read_bytes", "ceph_bluefs_read_bytes"},
36 {"bluefs.read_count", "ceph_bluefs_read_count"},
37 {"bluefs.read_disk_bytes", "ceph_bluefs_read_disk_bytes"},
38 {"bluefs.read_disk_bytes_db", "ceph_bluefs_read_disk_bytes_db"},
39 {"bluefs.read_disk_bytes_slow", "ceph_bluefs_read_disk_bytes_slow"},
40 {"bluefs.read_disk_bytes_wal", "ceph_bluefs_read_disk_bytes_wal"},
41 {"bluefs.read_disk_count", "ceph_bluefs_read_disk_count"},
42 {"bluefs.read_prefetch_bytes", "ceph_bluefs_read_prefetch_bytes"},
43 {"bluefs.read_prefetch_count", "ceph_bluefs_read_prefetch_count"},
44 {"bluefs.read_random_buffer_bytes", "ceph_bluefs_read_random_buffer_bytes"},
45 {"bluefs.read_random_buffer_count", "ceph_bluefs_read_random_buffer_count"},
46 {"bluefs.read_random_bytes", "ceph_bluefs_read_random_bytes"},
47 {"bluefs.read_random_count", "ceph_bluefs_read_random_count"},
48 {"bluefs.read_random_disk_bytes", "ceph_bluefs_read_random_disk_bytes"},
49 {"bluefs.read_random_disk_bytes_db", "ceph_bluefs_read_random_disk_bytes_db"},
50 {"bluefs.read_random_disk_bytes_slow", "ceph_bluefs_read_random_disk_bytes_slow"},
51 {"bluefs.read_random_disk_bytes_wal", "ceph_bluefs_read_random_disk_bytes_wal"},
52 {"bluefs.read_random_disk_count", "ceph_bluefs_read_random_disk_count"},
53 {"bluefs.slow_total_bytes", "ceph_bluefs_slow_total_bytes"},
54 {"bluefs.slow_used_bytes", "ceph_bluefs_slow_used_bytes"},
55 {"bluefs.wal_total_bytes", "ceph_bluefs_wal_total_bytes"},
56 {"bluefs.wal_used_bytes", "ceph_bluefs_wal_used_bytes"},
57 {"bluestore-pricache.cache_bytes", "ceph_bluestore_pricache_cache_bytes"},
58 {"bluestore-pricache.heap_bytes", "ceph_bluestore_pricache_heap_bytes"},
59 {"bluestore-pricache.mapped_bytes", "ceph_bluestore_pricache_mapped_bytes"},
60 {"bluestore-pricache.target_bytes", "ceph_bluestore_pricache_target_bytes"},
61 {"bluestore-pricache.unmapped_bytes", "ceph_bluestore_pricache_unmapped_bytes"},
62 {"bluestore-pricache:data.committed_bytes", "ceph_bluestore_pricache:data_committed_bytes"},
63 {"bluestore-pricache:data.pri0_bytes", "ceph_bluestore_pricache:data_pri0_bytes"},
64 {"bluestore-pricache:data.pri10_bytes", "ceph_bluestore_pricache:data_pri10_bytes"},
65 {"bluestore-pricache:data.pri11_bytes", "ceph_bluestore_pricache:data_pri11_bytes"},
66 {"bluestore-pricache:data.pri1_bytes", "ceph_bluestore_pricache:data_pri1_bytes"},
67 {"bluestore-pricache:data.pri2_bytes", "ceph_bluestore_pricache:data_pri2_bytes"},
68 {"bluestore-pricache:data.pri3_bytes", "ceph_bluestore_pricache:data_pri3_bytes"},
69 {"bluestore-pricache:data.pri4_bytes", "ceph_bluestore_pricache:data_pri4_bytes"},
70 {"bluestore-pricache:data.pri5_bytes", "ceph_bluestore_pricache:data_pri5_bytes"},
71 {"bluestore-pricache:data.pri6_bytes", "ceph_bluestore_pricache:data_pri6_bytes"},
72 {"bluestore-pricache:data.pri7_bytes", "ceph_bluestore_pricache:data_pri7_bytes"},
73 {"bluestore-pricache:data.pri8_bytes", "ceph_bluestore_pricache:data_pri8_bytes"},
74 {"bluestore-pricache:data.pri9_bytes", "ceph_bluestore_pricache:data_pri9_bytes"},
75 {"bluestore-pricache:data.reserved_bytes", "ceph_bluestore_pricache:data_reserved_bytes"},
76 {"bluestore-pricache:kv.committed_bytes", "ceph_bluestore_pricache:kv_committed_bytes"},
77 {"bluestore-pricache:kv.pri0_bytes", "ceph_bluestore_pricache:kv_pri0_bytes"},
78 {"bluestore-pricache:kv.pri10_bytes", "ceph_bluestore_pricache:kv_pri10_bytes"},
79 {"bluestore-pricache:kv.pri11_bytes", "ceph_bluestore_pricache:kv_pri11_bytes"},
80 {"bluestore-pricache:kv.pri1_bytes", "ceph_bluestore_pricache:kv_pri1_bytes"},
81 {"bluestore-pricache:kv.pri2_bytes", "ceph_bluestore_pricache:kv_pri2_bytes"},
82 {"bluestore-pricache:kv.pri3_bytes", "ceph_bluestore_pricache:kv_pri3_bytes"},
83 {"bluestore-pricache:kv.pri4_bytes", "ceph_bluestore_pricache:kv_pri4_bytes"},
84 {"bluestore-pricache:kv.pri5_bytes", "ceph_bluestore_pricache:kv_pri5_bytes"},
85 {"bluestore-pricache:kv.pri6_bytes", "ceph_bluestore_pricache:kv_pri6_bytes"},
86 {"bluestore-pricache:kv.pri7_bytes", "ceph_bluestore_pricache:kv_pri7_bytes"},
87 {"bluestore-pricache:kv.pri8_bytes", "ceph_bluestore_pricache:kv_pri8_bytes"},
88 {"bluestore-pricache:kv.pri9_bytes", "ceph_bluestore_pricache:kv_pri9_bytes"},
89 {"bluestore-pricache:kv.reserved_bytes", "ceph_bluestore_pricache:kv_reserved_bytes"},
90 {"bluestore-pricache:kv_onode.committed_bytes", "ceph_bluestore_pricache:kv_onode_committed_bytes"},
91 {"bluestore-pricache:kv_onode.pri0_bytes", "ceph_bluestore_pricache:kv_onode_pri0_bytes"},
92 {"bluestore-pricache:kv_onode.pri10_bytes", "ceph_bluestore_pricache:kv_onode_pri10_bytes"},
93 {"bluestore-pricache:kv_onode.pri11_bytes", "ceph_bluestore_pricache:kv_onode_pri11_bytes"},
94 {"bluestore-pricache:kv_onode.pri1_bytes", "ceph_bluestore_pricache:kv_onode_pri1_bytes"},
95 {"bluestore-pricache:kv_onode.pri2_bytes", "ceph_bluestore_pricache:kv_onode_pri2_bytes"},
96 {"bluestore-pricache:kv_onode.pri3_bytes", "ceph_bluestore_pricache:kv_onode_pri3_bytes"},
97 {"bluestore-pricache:kv_onode.pri4_bytes", "ceph_bluestore_pricache:kv_onode_pri4_bytes"},
98 {"bluestore-pricache:kv_onode.pri5_bytes", "ceph_bluestore_pricache:kv_onode_pri5_bytes"},
99 {"bluestore-pricache:kv_onode.pri6_bytes", "ceph_bluestore_pricache:kv_onode_pri6_bytes"},
100 {"bluestore-pricache:kv_onode.pri7_bytes", "ceph_bluestore_pricache:kv_onode_pri7_bytes"},
101 {"bluestore-pricache:kv_onode.pri8_bytes", "ceph_bluestore_pricache:kv_onode_pri8_bytes"},
102 {"bluestore-pricache:kv_onode.pri9_bytes", "ceph_bluestore_pricache:kv_onode_pri9_bytes"},
103 {"bluestore-pricache:kv_onode.reserved_bytes", "ceph_bluestore_pricache:kv_onode_reserved_bytes"},
104 {"bluestore-pricache:meta.committed_bytes", "ceph_bluestore_pricache:meta_committed_bytes"},
105 {"bluestore-pricache:meta.pri0_bytes", "ceph_bluestore_pricache:meta_pri0_bytes"},
106 {"bluestore-pricache:meta.pri10_bytes", "ceph_bluestore_pricache:meta_pri10_bytes"},
107 {"bluestore-pricache:meta.pri11_bytes", "ceph_bluestore_pricache:meta_pri11_bytes"},
108 {"bluestore-pricache:meta.pri1_bytes", "ceph_bluestore_pricache:meta_pri1_bytes"},
109 {"bluestore-pricache:meta.pri2_bytes", "ceph_bluestore_pricache:meta_pri2_bytes"},
110 {"bluestore-pricache:meta.pri3_bytes", "ceph_bluestore_pricache:meta_pri3_bytes"},
111 {"bluestore-pricache:meta.pri4_bytes", "ceph_bluestore_pricache:meta_pri4_bytes"},
112 {"bluestore-pricache:meta.pri5_bytes", "ceph_bluestore_pricache:meta_pri5_bytes"},
113 {"bluestore-pricache:meta.pri6_bytes", "ceph_bluestore_pricache:meta_pri6_bytes"},
114 {"bluestore-pricache:meta.pri7_bytes", "ceph_bluestore_pricache:meta_pri7_bytes"},
115 {"bluestore-pricache:meta.pri8_bytes", "ceph_bluestore_pricache:meta_pri8_bytes"},
116 {"bluestore-pricache:meta.pri9_bytes", "ceph_bluestore_pricache:meta_pri9_bytes"},
117 {"bluestore-pricache:meta.reserved_bytes", "ceph_bluestore_pricache:meta_reserved_bytes"},
118 {"bluestore.alloc_unit", "ceph_bluestore_alloc_unit"},
119 {"bluestore.allocated", "ceph_bluestore_allocated"},
120 {"bluestore.clist_lat_count", "ceph_bluestore_clist_lat_count"},
121 {"bluestore.clist_lat_sum", "ceph_bluestore_clist_lat_sum"},
122 {"bluestore.compress_lat_count", "ceph_bluestore_compress_lat_count"},
123 {"bluestore.compress_lat_sum", "ceph_bluestore_compress_lat_sum"},
124 {"bluestore.compressed", "ceph_bluestore_compressed"},
125 {"bluestore.compressed_allocated", "ceph_bluestore_compressed_allocated"},
126 {"bluestore.compressed_original", "ceph_bluestore_compressed_original"},
127 {"bluestore.csum_lat_count", "ceph_bluestore_csum_lat_count"},
128 {"bluestore.csum_lat_sum", "ceph_bluestore_csum_lat_sum"},
129 {"bluestore.decompress_lat_count", "ceph_bluestore_decompress_lat_count"},
130 {"bluestore.decompress_lat_sum", "ceph_bluestore_decompress_lat_sum"},
131 {"bluestore.kv_commit_lat_count", "ceph_bluestore_kv_commit_lat_count"},
132 {"bluestore.kv_commit_lat_sum", "ceph_bluestore_kv_commit_lat_sum"},
133 {"bluestore.kv_final_lat_count", "ceph_bluestore_kv_final_lat_count"},
134 {"bluestore.kv_final_lat_sum", "ceph_bluestore_kv_final_lat_sum"},
135 {"bluestore.kv_flush_lat_count", "ceph_bluestore_kv_flush_lat_count"},
136 {"bluestore.kv_flush_lat_sum", "ceph_bluestore_kv_flush_lat_sum"},
137 {"bluestore.kv_sync_lat_count", "ceph_bluestore_kv_sync_lat_count"},
138 {"bluestore.kv_sync_lat_sum", "ceph_bluestore_kv_sync_lat_sum"},
139 {"bluestore.omap_get_keys_lat_count", "ceph_bluestore_omap_get_keys_lat_count"},
140 {"bluestore.omap_get_keys_lat_sum", "ceph_bluestore_omap_get_keys_lat_sum"},
141 {"bluestore.omap_get_values_lat_count", "ceph_bluestore_omap_get_values_lat_count"},
142 {"bluestore.omap_get_values_lat_sum", "ceph_bluestore_omap_get_values_lat_sum"},
143 {"bluestore.omap_lower_bound_lat_count", "ceph_bluestore_omap_lower_bound_lat_count"},
144 {"bluestore.omap_lower_bound_lat_sum", "ceph_bluestore_omap_lower_bound_lat_sum"},
145 {"bluestore.omap_next_lat_count", "ceph_bluestore_omap_next_lat_count"},
146 {"bluestore.omap_next_lat_sum", "ceph_bluestore_omap_next_lat_sum"},
147 {"bluestore.omap_seek_to_first_lat_count", "ceph_bluestore_omap_seek_to_first_lat_count"},
148 {"bluestore.omap_seek_to_first_lat_sum", "ceph_bluestore_omap_seek_to_first_lat_sum"},
149 {"bluestore.omap_upper_bound_lat_count", "ceph_bluestore_omap_upper_bound_lat_count"},
150 {"bluestore.omap_upper_bound_lat_sum", "ceph_bluestore_omap_upper_bound_lat_sum"},
151 {"bluestore.onode_hits", "ceph_bluestore_onode_hits"},
152 {"bluestore.onode_misses", "ceph_bluestore_onode_misses"},
153 {"bluestore.read_lat_count", "ceph_bluestore_read_lat_count"},
154 {"bluestore.read_lat_sum", "ceph_bluestore_read_lat_sum"},
155 {"bluestore.read_onode_meta_lat_count", "ceph_bluestore_read_onode_meta_lat_count"},
156 {"bluestore.read_onode_meta_lat_sum", "ceph_bluestore_read_onode_meta_lat_sum"},
157 {"bluestore.read_wait_aio_lat_count", "ceph_bluestore_read_wait_aio_lat_count"},
158 {"bluestore.read_wait_aio_lat_sum", "ceph_bluestore_read_wait_aio_lat_sum"},
159 {"bluestore.reads_with_retries", "ceph_bluestore_reads_with_retries"},
160 {"bluestore.remove_lat_count", "ceph_bluestore_remove_lat_count"},
161 {"bluestore.remove_lat_sum", "ceph_bluestore_remove_lat_sum"},
162 {"bluestore.state_aio_wait_lat_count", "ceph_bluestore_state_aio_wait_lat_count"},
163 {"bluestore.state_aio_wait_lat_sum", "ceph_bluestore_state_aio_wait_lat_sum"},
164 {"bluestore.state_deferred_aio_wait_lat_count", "ceph_bluestore_state_deferred_aio_wait_lat_count"},
165 {"bluestore.state_deferred_aio_wait_lat_sum", "ceph_bluestore_state_deferred_aio_wait_lat_sum"},
166 {"bluestore.state_deferred_cleanup_lat_count", "ceph_bluestore_state_deferred_cleanup_lat_count"},
167 {"bluestore.state_deferred_cleanup_lat_sum", "ceph_bluestore_state_deferred_cleanup_lat_sum"},
168 {"bluestore.state_deferred_queued_lat_count", "ceph_bluestore_state_deferred_queued_lat_count"},
169 {"bluestore.state_deferred_queued_lat_sum", "ceph_bluestore_state_deferred_queued_lat_sum"},
170 {"bluestore.state_done_lat_count", "ceph_bluestore_state_done_lat_count"},
171 {"bluestore.state_done_lat_sum", "ceph_bluestore_state_done_lat_sum"},
172 {"bluestore.state_finishing_lat_count", "ceph_bluestore_state_finishing_lat_count"},
173 {"bluestore.state_finishing_lat_sum", "ceph_bluestore_state_finishing_lat_sum"},
174 {"bluestore.state_io_done_lat_count", "ceph_bluestore_state_io_done_lat_count"},
175 {"bluestore.state_io_done_lat_sum", "ceph_bluestore_state_io_done_lat_sum"},
176 {"bluestore.state_kv_commiting_lat_count", "ceph_bluestore_state_kv_commiting_lat_count"},
177 {"bluestore.state_kv_commiting_lat_sum", "ceph_bluestore_state_kv_commiting_lat_sum"},
178 {"bluestore.state_kv_done_lat_count", "ceph_bluestore_state_kv_done_lat_count"},
179 {"bluestore.state_kv_done_lat_sum", "ceph_bluestore_state_kv_done_lat_sum"},
180 {"bluestore.state_kv_queued_lat_count", "ceph_bluestore_state_kv_queued_lat_count"},
181 {"bluestore.state_kv_queued_lat_sum", "ceph_bluestore_state_kv_queued_lat_sum"},
182 {"bluestore.state_prepare_lat_count", "ceph_bluestore_state_prepare_lat_count"},
183 {"bluestore.state_prepare_lat_sum", "ceph_bluestore_state_prepare_lat_sum"},
184 {"bluestore.stored", "ceph_bluestore_stored"},
185 {"bluestore.truncate_lat_count", "ceph_bluestore_truncate_lat_count"},
186 {"bluestore.truncate_lat_sum", "ceph_bluestore_truncate_lat_sum"},
187 {"bluestore.txc_commit_lat_count", "ceph_bluestore_txc_commit_lat_count"},
188 {"bluestore.txc_commit_lat_sum", "ceph_bluestore_txc_commit_lat_sum"},
189 {"bluestore.txc_submit_lat_count", "ceph_bluestore_txc_submit_lat_count"},
190 {"bluestore.txc_submit_lat_sum", "ceph_bluestore_txc_submit_lat_sum"},
191 {"bluestore.txc_throttle_lat_count", "ceph_bluestore_txc_throttle_lat_count"},
192 {"bluestore.txc_throttle_lat_sum", "ceph_bluestore_txc_throttle_lat_sum"},
193 {"cluster_by_class_total_bytes", "ceph_cluster_by_class_total_bytes"},
194 {"cluster_by_class_total_used_bytes", "ceph_cluster_by_class_total_used_bytes"},
195 {"cluster_by_class_total_used_raw_bytes", "ceph_cluster_by_class_total_used_raw_bytes"},
196 {"cluster_osd_blocklist_count", "ceph_cluster_osd_blocklist_count"},
197 {"cluster_total_bytes", "ceph_cluster_total_bytes"},
198 {"cluster_total_used_bytes", "ceph_cluster_total_used_bytes"},
199 {"cluster_total_used_raw_bytes", "ceph_cluster_total_used_raw_bytes"},
200 {"daemon_health_metrics", "ceph_daemon_health_metrics"},
201 {"disk_occupation", "ceph_disk_occupation"},
202 {"disk_occupation_human", "ceph_disk_occupation_human"},
203 {"fs_metadata", "ceph_fs_metadata"},
204 {"health_detail", "ceph_health_detail"},
205 {"health_status", "ceph_health_status"},
206 {"healthcheck_slow_ops", "ceph_healthcheck_slow_ops"},
207 {"mds.caps", "ceph_mds_caps"},
208 {"mds.ceph_cap_op_flush_ack", "ceph_mds_ceph_cap_op_flush_ack"},
209 {"mds.ceph_cap_op_flushsnap_ack", "ceph_mds_ceph_cap_op_flushsnap_ack"},
210 {"mds.ceph_cap_op_grant", "ceph_mds_ceph_cap_op_grant"},
211 {"mds.ceph_cap_op_revoke", "ceph_mds_ceph_cap_op_revoke"},
212 {"mds.ceph_cap_op_trunc", "ceph_mds_ceph_cap_op_trunc"},
213 {"mds.dir_commit", "ceph_mds_dir_commit"},
214 {"mds.dir_fetch_complete", "ceph_mds_dir_fetch_complete"},
215 {"mds.dir_fetch_keys", "ceph_mds_dir_fetch_keys"},
216 {"mds.dir_merge", "ceph_mds_dir_merge"},
217 {"mds.dir_split", "ceph_mds_dir_split"},
218 {"mds.exported_inodes", "ceph_mds_exported_inodes"},
219 {"mds.forward", "ceph_mds_forward"},
220 {"mds.handle_client_cap_release", "ceph_mds_handle_client_cap_release"},
221 {"mds.handle_client_caps", "ceph_mds_handle_client_caps"},
222 {"mds.handle_client_caps_dirty", "ceph_mds_handle_client_caps_dirty"},
223 {"mds.handle_inode_file_caps", "ceph_mds_handle_inode_file_caps"},
224 {"mds.imported_inodes", "ceph_mds_imported_inodes"},
225 {"mds.inodes", "ceph_mds_inodes"},
226 {"mds.inodes_expired", "ceph_mds_inodes_expired"},
227 {"mds.inodes_pinned", "ceph_mds_inodes_pinned"},
228 {"mds.inodes_with_caps", "ceph_mds_inodes_with_caps"},
229 {"mds.load_cent", "ceph_mds_load_cent"},
230 {"mds.openino_dir_fetch", "ceph_mds_openino_dir_fetch"},
231 {"mds.process_request_cap_release", "ceph_mds_process_request_cap_release"},
232 {"mds.reply_latency_count", "ceph_mds_reply_latency_count"},
233 {"mds.reply_latency_sum", "ceph_mds_reply_latency_sum"},
234 {"mds.request", "ceph_mds_request"},
235 {"mds.root_rbytes", "ceph_mds_root_rbytes"},
236 {"mds.root_rfiles", "ceph_mds_root_rfiles"},
237 {"mds.root_rsnaps", "ceph_mds_root_rsnaps"},
238 {"mds.slow_reply", "ceph_mds_slow_reply"},
239 {"mds.subtrees", "ceph_mds_subtrees"},
240 {"mds_cache.ireq_enqueue_scrub", "ceph_mds_cache_ireq_enqueue_scrub"},
241 {"mds_cache.ireq_exportdir", "ceph_mds_cache_ireq_exportdir"},
242 {"mds_cache.ireq_flush", "ceph_mds_cache_ireq_flush"},
243 {"mds_cache.ireq_fragmentdir", "ceph_mds_cache_ireq_fragmentdir"},
244 {"mds_cache.ireq_fragstats", "ceph_mds_cache_ireq_fragstats"},
245 {"mds_cache.ireq_inodestats", "ceph_mds_cache_ireq_inodestats"},
246 {"mds_cache.num_recovering_enqueued", "ceph_mds_cache_num_recovering_enqueued"},
247 {"mds_cache.num_recovering_prioritized", "ceph_mds_cache_num_recovering_prioritized"},
248 {"mds_cache.num_recovering_processing", "ceph_mds_cache_num_recovering_processing"},
249 {"mds_cache.num_strays", "ceph_mds_cache_num_strays"},
250 {"mds_cache.num_strays_delayed", "ceph_mds_cache_num_strays_delayed"},
251 {"mds_cache.num_strays_enqueuing", "ceph_mds_cache_num_strays_enqueuing"},
252 {"mds_cache.recovery_completed", "ceph_mds_cache_recovery_completed"},
253 {"mds_cache.recovery_started", "ceph_mds_cache_recovery_started"},
254 {"mds_cache.strays_created", "ceph_mds_cache_strays_created"},
255 {"mds_cache.strays_enqueued", "ceph_mds_cache_strays_enqueued"},
256 {"mds_cache.strays_migrated", "ceph_mds_cache_strays_migrated"},
257 {"mds_cache.strays_reintegrated", "ceph_mds_cache_strays_reintegrated"},
258 {"mds_log.ev", "ceph_mds_log_ev"},
259 {"mds_log.evadd", "ceph_mds_log_evadd"},
260 {"mds_log.evex", "ceph_mds_log_evex"},
261 {"mds_log.evexd", "ceph_mds_log_evexd"},
262 {"mds_log.evexg", "ceph_mds_log_evexg"},
263 {"mds_log.evtrm", "ceph_mds_log_evtrm"},
264 {"mds_log.jlat_count", "ceph_mds_log_jlat_count"},
265 {"mds_log.jlat_sum", "ceph_mds_log_jlat_sum"},
266 {"mds_log.replayed", "ceph_mds_log_replayed"},
267 {"mds_log.seg", "ceph_mds_log_seg"},
268 {"mds_log.segadd", "ceph_mds_log_segadd"},
269 {"mds_log.segex", "ceph_mds_log_segex"},
270 {"mds_log.segexd", "ceph_mds_log_segexd"},
271 {"mds_log.segexg", "ceph_mds_log_segexg"},
272 {"mds_log.segtrm", "ceph_mds_log_segtrm"},
273 {"mds_mem.cap", "ceph_mds_mem_cap"},
274 {"mds_mem.cap+", "ceph_mds_mem_cap_plus"},
275 {"mds_mem.cap-", "ceph_mds_mem_cap_minus"},
276 {"mds_mem.dir", "ceph_mds_mem_dir"},
277 {"mds_mem.dir+", "ceph_mds_mem_dir_plus"},
278 {"mds_mem.dir-", "ceph_mds_mem_dir_minus"},
279 {"mds_mem.dn", "ceph_mds_mem_dn"},
280 {"mds_mem.dn+", "ceph_mds_mem_dn_plus"},
281 {"mds_mem.dn-", "ceph_mds_mem_dn_minus"},
282 {"mds_mem.heap", "ceph_mds_mem_heap"},
283 {"mds_mem.ino", "ceph_mds_mem_ino"},
284 {"mds_mem.ino+", "ceph_mds_mem_ino_plus"},
285 {"mds_mem.ino-", "ceph_mds_mem_ino_minus"},
286 {"mds_metadata", "ceph_mds_metadata"},
287 {"mds_server.cap_acquisition_throttle", "ceph_mds_server_cap_acquisition_throttle"},
288 {"mds_server.cap_revoke_eviction", "ceph_mds_server_cap_revoke_eviction"},
289 {"mds_server.handle_client_request", "ceph_mds_server_handle_client_request"},
290 {"mds_server.handle_client_session", "ceph_mds_server_handle_client_session"},
291 {"mds_server.handle_peer_request", "ceph_mds_server_handle_peer_request"},
292 {"mds_server.req_create_latency_count", "ceph_mds_server_req_create_latency_count"},
293 {"mds_server.req_create_latency_sum", "ceph_mds_server_req_create_latency_sum"},
294 {"mds_server.req_getattr_latency_count", "ceph_mds_server_req_getattr_latency_count"},
295 {"mds_server.req_getattr_latency_sum", "ceph_mds_server_req_getattr_latency_sum"},
296 {"mds_server.req_getfilelock_latency_count", "ceph_mds_server_req_getfilelock_latency_count"},
297 {"mds_server.req_getfilelock_latency_sum", "ceph_mds_server_req_getfilelock_latency_sum"},
298 {"mds_server.req_getvxattr_latency_count", "ceph_mds_server_req_getvxattr_latency_count"},
299 {"mds_server.req_getvxattr_latency_sum", "ceph_mds_server_req_getvxattr_latency_sum"},
300 {"mds_server.req_link_latency_count", "ceph_mds_server_req_link_latency_count"},
301 {"mds_server.req_link_latency_sum", "ceph_mds_server_req_link_latency_sum"},
302 {"mds_server.req_lookup_latency_count", "ceph_mds_server_req_lookup_latency_count"},
303 {"mds_server.req_lookup_latency_sum", "ceph_mds_server_req_lookup_latency_sum"},
304 {"mds_server.req_lookuphash_latency_count", "ceph_mds_server_req_lookuphash_latency_count"},
305 {"mds_server.req_lookuphash_latency_sum", "ceph_mds_server_req_lookuphash_latency_sum"},
306 {"mds_server.req_lookupino_latency_count", "ceph_mds_server_req_lookupino_latency_count"},
307 {"mds_server.req_lookupino_latency_sum", "ceph_mds_server_req_lookupino_latency_sum"},
308 {"mds_server.req_lookupname_latency_count", "ceph_mds_server_req_lookupname_latency_count"},
309 {"mds_server.req_lookupname_latency_sum", "ceph_mds_server_req_lookupname_latency_sum"},
310 {"mds_server.req_lookupparent_latency_count", "ceph_mds_server_req_lookupparent_latency_count"},
311 {"mds_server.req_lookupparent_latency_sum", "ceph_mds_server_req_lookupparent_latency_sum"},
312 {"mds_server.req_lookupsnap_latency_count", "ceph_mds_server_req_lookupsnap_latency_count"},
313 {"mds_server.req_lookupsnap_latency_sum", "ceph_mds_server_req_lookupsnap_latency_sum"},
314 {"mds_server.req_lssnap_latency_count", "ceph_mds_server_req_lssnap_latency_count"},
315 {"mds_server.req_lssnap_latency_sum", "ceph_mds_server_req_lssnap_latency_sum"},
316 {"mds_server.req_mkdir_latency_count", "ceph_mds_server_req_mkdir_latency_count"},
317 {"mds_server.req_mkdir_latency_sum", "ceph_mds_server_req_mkdir_latency_sum"},
318 {"mds_server.req_mknod_latency_count", "ceph_mds_server_req_mknod_latency_count"},
319 {"mds_server.req_mknod_latency_sum", "ceph_mds_server_req_mknod_latency_sum"},
320 {"mds_server.req_mksnap_latency_count", "ceph_mds_server_req_mksnap_latency_count"},
321 {"mds_server.req_mksnap_latency_sum", "ceph_mds_server_req_mksnap_latency_sum"},
322 {"mds_server.req_open_latency_count", "ceph_mds_server_req_open_latency_count"},
323 {"mds_server.req_open_latency_sum", "ceph_mds_server_req_open_latency_sum"},
324 {"mds_server.req_readdir_latency_count", "ceph_mds_server_req_readdir_latency_count"},
325 {"mds_server.req_readdir_latency_sum", "ceph_mds_server_req_readdir_latency_sum"},
326 {"mds_server.req_rename_latency_count", "ceph_mds_server_req_rename_latency_count"},
327 {"mds_server.req_rename_latency_sum", "ceph_mds_server_req_rename_latency_sum"},
328 {"mds_server.req_renamesnap_latency_count", "ceph_mds_server_req_renamesnap_latency_count"},
329 {"mds_server.req_renamesnap_latency_sum", "ceph_mds_server_req_renamesnap_latency_sum"},
330 {"mds_server.req_rmdir_latency_count", "ceph_mds_server_req_rmdir_latency_count"},
331 {"mds_server.req_rmdir_latency_sum", "ceph_mds_server_req_rmdir_latency_sum"},
332 {"mds_server.req_rmsnap_latency_count", "ceph_mds_server_req_rmsnap_latency_count"},
333 {"mds_server.req_rmsnap_latency_sum", "ceph_mds_server_req_rmsnap_latency_sum"},
334 {"mds_server.req_rmxattr_latency_count", "ceph_mds_server_req_rmxattr_latency_count"},
335 {"mds_server.req_rmxattr_latency_sum", "ceph_mds_server_req_rmxattr_latency_sum"},
336 {"mds_server.req_setattr_latency_count", "ceph_mds_server_req_setattr_latency_count"},
337 {"mds_server.req_setattr_latency_sum", "ceph_mds_server_req_setattr_latency_sum"},
338 {"mds_server.req_setdirlayout_latency_count", "ceph_mds_server_req_setdirlayout_latency_count"},
339 {"mds_server.req_setdirlayout_latency_sum", "ceph_mds_server_req_setdirlayout_latency_sum"},
340 {"mds_server.req_setfilelock_latency_count", "ceph_mds_server_req_setfilelock_latency_count"},
341 {"mds_server.req_setfilelock_latency_sum", "ceph_mds_server_req_setfilelock_latency_sum"},
342 {"mds_server.req_setlayout_latency_count", "ceph_mds_server_req_setlayout_latency_count"},
343 {"mds_server.req_setlayout_latency_sum", "ceph_mds_server_req_setlayout_latency_sum"},
344 {"mds_server.req_setxattr_latency_count", "ceph_mds_server_req_setxattr_latency_count"},
345 {"mds_server.req_setxattr_latency_sum", "ceph_mds_server_req_setxattr_latency_sum"},
346 {"mds_server.req_symlink_latency_count", "ceph_mds_server_req_symlink_latency_count"},
347 {"mds_server.req_symlink_latency_sum", "ceph_mds_server_req_symlink_latency_sum"},
348 {"mds_server.req_unlink_latency_count", "ceph_mds_server_req_unlink_latency_count"},
349 {"mds_server.req_unlink_latency_sum", "ceph_mds_server_req_unlink_latency_sum"},
350 {"mds_sessions.average_load", "ceph_mds_sessions_average_load"},
351 {"mds_sessions.avg_session_uptime", "ceph_mds_sessions_avg_session_uptime"},
352 {"mds_sessions.session_add", "ceph_mds_sessions_session_add"},
353 {"mds_sessions.session_count", "ceph_mds_sessions_session_count"},
354 {"mds_sessions.session_remove", "ceph_mds_sessions_session_remove"},
355 {"mds_sessions.sessions_open", "ceph_mds_sessions_sessions_open"},
356 {"mds_sessions.sessions_stale", "ceph_mds_sessions_sessions_stale"},
357 {"mds_sessions.total_load", "ceph_mds_sessions_total_load"},
358 {"mgr_metadata", "ceph_mgr_metadata"},
359 {"mgr_module_can_run", "ceph_mgr_module_can_run"},
360 {"mgr_module_status", "ceph_mgr_module_status"},
361 {"mgr_status", "ceph_mgr_status"},
362 {"mon.election_call", "ceph_mon_election_call"},
363 {"mon.election_lose", "ceph_mon_election_lose"},
364 {"mon.election_win", "ceph_mon_election_win"},
365 {"mon.num_elections", "ceph_mon_num_elections"},
366 {"mon.num_sessions", "ceph_mon_num_sessions"},
367 {"mon.session_add", "ceph_mon_session_add"},
368 {"mon.session_rm", "ceph_mon_session_rm"},
369 {"mon.session_trim", "ceph_mon_session_trim"},
370 {"mon_metadata", "ceph_mon_metadata"},
371 {"mon_quorum_status", "ceph_mon_quorum_status"},
372 {"num_objects_degraded", "ceph_num_objects_degraded"},
373 {"num_objects_misplaced", "ceph_num_objects_misplaced"},
374 {"num_objects_unfound", "ceph_num_objects_unfound"},
375 {"objecter-0x5591781656c0.op_active", "ceph_objecter_0x5591781656c0_op_active"},
376 {"objecter-0x5591781656c0.op_r", "ceph_objecter_0x5591781656c0_op_r"},
377 {"objecter-0x5591781656c0.op_rmw", "ceph_objecter_0x5591781656c0_op_rmw"},
378 {"objecter-0x5591781656c0.op_w", "ceph_objecter_0x5591781656c0_op_w"},
379 {"objecter-0x559178165930.op_active", "ceph_objecter_0x559178165930_op_active"},
380 {"objecter-0x559178165930.op_r", "ceph_objecter_0x559178165930_op_r"},
381 {"objecter-0x559178165930.op_rmw", "ceph_objecter_0x559178165930_op_rmw"},
382 {"objecter-0x559178165930.op_w", "ceph_objecter_0x559178165930_op_w"},
383 {"objecter.op_active", "ceph_objecter_op_active"},
384 {"objecter.op_r", "ceph_objecter_op_r"},
385 {"objecter.op_rmw", "ceph_objecter_op_rmw"},
386 {"objecter.op_w", "ceph_objecter_op_w"},
387 {"osd.numpg", "ceph_osd_numpg"},
388 {"osd.numpg_removing", "ceph_osd_numpg_removing"},
389 {"osd.op", "ceph_osd_op"},
390 {"osd.op_in_bytes", "ceph_osd_op_in_bytes"},
391 {"osd.op_latency_count", "ceph_osd_op_latency_count"},
392 {"osd.op_latency_sum", "ceph_osd_op_latency_sum"},
393 {"osd.op_out_bytes", "ceph_osd_op_out_bytes"},
394 {"osd.op_prepare_latency_count", "ceph_osd_op_prepare_latency_count"},
395 {"osd.op_prepare_latency_sum", "ceph_osd_op_prepare_latency_sum"},
396 {"osd.op_process_latency_count", "ceph_osd_op_process_latency_count"},
397 {"osd.op_process_latency_sum", "ceph_osd_op_process_latency_sum"},
398 {"osd.op_r", "ceph_osd_op_r"},
399 {"osd.op_r_latency_count", "ceph_osd_op_r_latency_count"},
400 {"osd.op_r_latency_sum", "ceph_osd_op_r_latency_sum"},
401 {"osd.op_r_out_bytes", "ceph_osd_op_r_out_bytes"},
402 {"osd.op_r_prepare_latency_count", "ceph_osd_op_r_prepare_latency_count"},
403 {"osd.op_r_prepare_latency_sum", "ceph_osd_op_r_prepare_latency_sum"},
404 {"osd.op_r_process_latency_count", "ceph_osd_op_r_process_latency_count"},
405 {"osd.op_r_process_latency_sum", "ceph_osd_op_r_process_latency_sum"},
406 {"osd.op_rw", "ceph_osd_op_rw"},
407 {"osd.op_rw_in_bytes", "ceph_osd_op_rw_in_bytes"},
408 {"osd.op_rw_latency_count", "ceph_osd_op_rw_latency_count"},
409 {"osd.op_rw_latency_sum", "ceph_osd_op_rw_latency_sum"},
410 {"osd.op_rw_out_bytes", "ceph_osd_op_rw_out_bytes"},
411 {"osd.op_rw_prepare_latency_count", "ceph_osd_op_rw_prepare_latency_count"},
412 {"osd.op_rw_prepare_latency_sum", "ceph_osd_op_rw_prepare_latency_sum"},
413 {"osd.op_rw_process_latency_count", "ceph_osd_op_rw_process_latency_count"},
414 {"osd.op_rw_process_latency_sum", "ceph_osd_op_rw_process_latency_sum"},
415 {"osd.op_w", "ceph_osd_op_w"},
416 {"osd.op_w_in_bytes", "ceph_osd_op_w_in_bytes"},
417 {"osd.op_w_latency_count", "ceph_osd_op_w_latency_count"},
418 {"osd.op_w_latency_sum", "ceph_osd_op_w_latency_sum"},
419 {"osd.op_w_prepare_latency_count", "ceph_osd_op_w_prepare_latency_count"},
420 {"osd.op_w_prepare_latency_sum", "ceph_osd_op_w_prepare_latency_sum"},
421 {"osd.op_w_process_latency_count", "ceph_osd_op_w_process_latency_count"},
422 {"osd.op_w_process_latency_sum", "ceph_osd_op_w_process_latency_sum"},
423 {"osd.op_wip", "ceph_osd_op_wip"},
424 {"osd.recovery_bytes", "ceph_osd_recovery_bytes"},
425 {"osd.recovery_ops", "ceph_osd_recovery_ops"},
426 {"osd.stat_bytes", "ceph_osd_stat_bytes"},
427 {"osd.stat_bytes_used", "ceph_osd_stat_bytes_used"},
428 {"osd_apply_latency_ms", "ceph_osd_apply_latency_ms"},
429 {"osd_commit_latency_ms", "ceph_osd_commit_latency_ms"},
430 {"osd_flag_nobackfill", "ceph_osd_flag_nobackfill"},
431 {"osd_flag_nodeep-scrub", "ceph_osd_flag_nodeep_scrub"},
432 {"osd_flag_nodown", "ceph_osd_flag_nodown"},
433 {"osd_flag_noin", "ceph_osd_flag_noin"},
434 {"osd_flag_noout", "ceph_osd_flag_noout"},
435 {"osd_flag_norebalance", "ceph_osd_flag_norebalance"},
436 {"osd_flag_norecover", "ceph_osd_flag_norecover"},
437 {"osd_flag_noscrub", "ceph_osd_flag_noscrub"},
438 {"osd_flag_noup", "ceph_osd_flag_noup"},
439 {"osd_in", "ceph_osd_in"},
440 {"osd_metadata", "ceph_osd_metadata"},
441 {"osd_up", "ceph_osd_up"},
442 {"osd_weight", "ceph_osd_weight"},
443 {"paxos.accept_timeout", "ceph_paxos_accept_timeout"},
444 {"paxos.begin", "ceph_paxos_begin"},
445 {"paxos.begin_bytes_count", "ceph_paxos_begin_bytes_count"},
446 {"paxos.begin_bytes_sum", "ceph_paxos_begin_bytes_sum"},
447 {"paxos.begin_keys_count", "ceph_paxos_begin_keys_count"},
448 {"paxos.begin_keys_sum", "ceph_paxos_begin_keys_sum"},
449 {"paxos.begin_latency_count", "ceph_paxos_begin_latency_count"},
450 {"paxos.begin_latency_sum", "ceph_paxos_begin_latency_sum"},
451 {"paxos.collect", "ceph_paxos_collect"},
452 {"paxos.collect_bytes_count", "ceph_paxos_collect_bytes_count"},
453 {"paxos.collect_bytes_sum", "ceph_paxos_collect_bytes_sum"},
454 {"paxos.collect_keys_count", "ceph_paxos_collect_keys_count"},
455 {"paxos.collect_keys_sum", "ceph_paxos_collect_keys_sum"},
456 {"paxos.collect_latency_count", "ceph_paxos_collect_latency_count"},
457 {"paxos.collect_latency_sum", "ceph_paxos_collect_latency_sum"},
458 {"paxos.collect_timeout", "ceph_paxos_collect_timeout"},
459 {"paxos.collect_uncommitted", "ceph_paxos_collect_uncommitted"},
460 {"paxos.commit", "ceph_paxos_commit"},
461 {"paxos.commit_bytes_count", "ceph_paxos_commit_bytes_count"},
462 {"paxos.commit_bytes_sum", "ceph_paxos_commit_bytes_sum"},
463 {"paxos.commit_keys_count", "ceph_paxos_commit_keys_count"},
464 {"paxos.commit_keys_sum", "ceph_paxos_commit_keys_sum"},
465 {"paxos.commit_latency_count", "ceph_paxos_commit_latency_count"},
466 {"paxos.commit_latency_sum", "ceph_paxos_commit_latency_sum"},
467 {"paxos.lease_ack_timeout", "ceph_paxos_lease_ack_timeout"},
468 {"paxos.lease_timeout", "ceph_paxos_lease_timeout"},
469 {"paxos.new_pn", "ceph_paxos_new_pn"},
470 {"paxos.new_pn_latency_count", "ceph_paxos_new_pn_latency_count"},
471 {"paxos.new_pn_latency_sum", "ceph_paxos_new_pn_latency_sum"},
472 {"paxos.refresh", "ceph_paxos_refresh"},
473 {"paxos.refresh_latency_count", "ceph_paxos_refresh_latency_count"},
474 {"paxos.refresh_latency_sum", "ceph_paxos_refresh_latency_sum"},
475 {"paxos.restart", "ceph_paxos_restart"},
476 {"paxos.share_state", "ceph_paxos_share_state"},
477 {"paxos.share_state_bytes_count", "ceph_paxos_share_state_bytes_count"},
478 {"paxos.share_state_bytes_sum", "ceph_paxos_share_state_bytes_sum"},
479 {"paxos.share_state_keys_count", "ceph_paxos_share_state_keys_count"},
480 {"paxos.share_state_keys_sum", "ceph_paxos_share_state_keys_sum"},
481 {"paxos.start_leader", "ceph_paxos_start_leader"},
482 {"paxos.start_peon", "ceph_paxos_start_peon"},
483 {"paxos.store_state", "ceph_paxos_store_state"},
484 {"paxos.store_state_bytes_count", "ceph_paxos_store_state_bytes_count"},
485 {"paxos.store_state_bytes_sum", "ceph_paxos_store_state_bytes_sum"},
486 {"paxos.store_state_keys_count", "ceph_paxos_store_state_keys_count"},
487 {"paxos.store_state_keys_sum", "ceph_paxos_store_state_keys_sum"},
488 {"paxos.store_state_latency_count", "ceph_paxos_store_state_latency_count"},
489 {"paxos.store_state_latency_sum", "ceph_paxos_store_state_latency_sum"},
490 {"pg_activating", "ceph_pg_activating"},
491 {"pg_active", "ceph_pg_active"},
492 {"pg_backfill_toofull", "ceph_pg_backfill_toofull"},
493 {"pg_backfill_unfound", "ceph_pg_backfill_unfound"},
494 {"pg_backfill_wait", "ceph_pg_backfill_wait"},
495 {"pg_backfilling", "ceph_pg_backfilling"},
496 {"pg_clean", "ceph_pg_clean"},
497 {"pg_creating", "ceph_pg_creating"},
498 {"pg_deep", "ceph_pg_deep"},
499 {"pg_degraded", "ceph_pg_degraded"},
500 {"pg_down", "ceph_pg_down"},
501 {"pg_failed_repair", "ceph_pg_failed_repair"},
502 {"pg_forced_backfill", "ceph_pg_forced_backfill"},
503 {"pg_forced_recovery", "ceph_pg_forced_recovery"},
504 {"pg_incomplete", "ceph_pg_incomplete"},
505 {"pg_inconsistent", "ceph_pg_inconsistent"},
506 {"pg_laggy", "ceph_pg_laggy"},
507 {"pg_peered", "ceph_pg_peered"},
508 {"pg_peering", "ceph_pg_peering"},
509 {"pg_premerge", "ceph_pg_premerge"},
510 {"pg_recovering", "ceph_pg_recovering"},
511 {"pg_recovery_toofull", "ceph_pg_recovery_toofull"},
512 {"pg_recovery_unfound", "ceph_pg_recovery_unfound"},
513 {"pg_recovery_wait", "ceph_pg_recovery_wait"},
514 {"pg_remapped", "ceph_pg_remapped"},
515 {"pg_repair", "ceph_pg_repair"},
516 {"pg_scrubbing", "ceph_pg_scrubbing"},
517 {"pg_snaptrim", "ceph_pg_snaptrim"},
518 {"pg_snaptrim_error", "ceph_pg_snaptrim_error"},
519 {"pg_snaptrim_wait", "ceph_pg_snaptrim_wait"},
520 {"pg_stale", "ceph_pg_stale"},
521 {"pg_total", "ceph_pg_total"},
522 {"pg_undersized", "ceph_pg_undersized"},
523 {"pg_unknown", "ceph_pg_unknown"},
524 {"pg_wait", "ceph_pg_wait"},
525 {"pool_avail_raw", "ceph_pool_avail_raw"},
526 {"pool_bytes_used", "ceph_pool_bytes_used"},
527 {"pool_compress_bytes_used", "ceph_pool_compress_bytes_used"},
528 {"pool_compress_under_bytes", "ceph_pool_compress_under_bytes"},
529 {"pool_dirty", "ceph_pool_dirty"},
530 {"pool_max_avail", "ceph_pool_max_avail"},
531 {"pool_metadata", "ceph_pool_metadata"},
532 {"pool_num_bytes_recovered", "ceph_pool_num_bytes_recovered"},
533 {"pool_num_objects_recovered", "ceph_pool_num_objects_recovered"},
534 {"pool_objects", "ceph_pool_objects"},
535 {"pool_objects_repaired", "ceph_pool_objects_repaired"},
536 {"pool_percent_used", "ceph_pool_percent_used"},
537 {"pool_quota_bytes", "ceph_pool_quota_bytes"},
538 {"pool_quota_objects", "ceph_pool_quota_objects"},
539 {"pool_rd", "ceph_pool_rd"},
540 {"pool_rd_bytes", "ceph_pool_rd_bytes"},
541 {"pool_recovering_bytes_per_sec", "ceph_pool_recovering_bytes_per_sec"},
542 {"pool_recovering_keys_per_sec", "ceph_pool_recovering_keys_per_sec"},
543 {"pool_recovering_objects_per_sec", "ceph_pool_recovering_objects_per_sec"},
544 {"pool_stored", "ceph_pool_stored"},
545 {"pool_stored_raw", "ceph_pool_stored_raw"},
546 {"pool_wr", "ceph_pool_wr"},
547 {"pool_wr_bytes", "ceph_pool_wr_bytes"},
548 {"prioritycache.cache_bytes", "ceph_prioritycache_cache_bytes"},
549 {"prioritycache.heap_bytes", "ceph_prioritycache_heap_bytes"},
550 {"prioritycache.mapped_bytes", "ceph_prioritycache_mapped_bytes"},
551 {"prioritycache.target_bytes", "ceph_prioritycache_target_bytes"},
552 {"prioritycache.unmapped_bytes", "ceph_prioritycache_unmapped_bytes"},
553 {"prioritycache:full.committed_bytes", "ceph_prioritycache:full_committed_bytes"},
554 {"prioritycache:full.pri0_bytes", "ceph_prioritycache:full_pri0_bytes"},
555 {"prioritycache:full.pri10_bytes", "ceph_prioritycache:full_pri10_bytes"},
556 {"prioritycache:full.pri11_bytes", "ceph_prioritycache:full_pri11_bytes"},
557 {"prioritycache:full.pri1_bytes", "ceph_prioritycache:full_pri1_bytes"},
558 {"prioritycache:full.pri2_bytes", "ceph_prioritycache:full_pri2_bytes"},
559 {"prioritycache:full.pri3_bytes", "ceph_prioritycache:full_pri3_bytes"},
560 {"prioritycache:full.pri4_bytes", "ceph_prioritycache:full_pri4_bytes"},
561 {"prioritycache:full.pri5_bytes", "ceph_prioritycache:full_pri5_bytes"},
562 {"prioritycache:full.pri6_bytes", "ceph_prioritycache:full_pri6_bytes"},
563 {"prioritycache:full.pri7_bytes", "ceph_prioritycache:full_pri7_bytes"},
564 {"prioritycache:full.pri8_bytes", "ceph_prioritycache:full_pri8_bytes"},
565 {"prioritycache:full.pri9_bytes", "ceph_prioritycache:full_pri9_bytes"},
566 {"prioritycache:full.reserved_bytes", "ceph_prioritycache:full_reserved_bytes"},
567 {"prioritycache:inc.committed_bytes", "ceph_prioritycache:inc_committed_bytes"},
568 {"prioritycache:inc.pri0_bytes", "ceph_prioritycache:inc_pri0_bytes"},
569 {"prioritycache:inc.pri10_bytes", "ceph_prioritycache:inc_pri10_bytes"},
570 {"prioritycache:inc.pri11_bytes", "ceph_prioritycache:inc_pri11_bytes"},
571 {"prioritycache:inc.pri1_bytes", "ceph_prioritycache:inc_pri1_bytes"},
572 {"prioritycache:inc.pri2_bytes", "ceph_prioritycache:inc_pri2_bytes"},
573 {"prioritycache:inc.pri3_bytes", "ceph_prioritycache:inc_pri3_bytes"},
574 {"prioritycache:inc.pri4_bytes", "ceph_prioritycache:inc_pri4_bytes"},
575 {"prioritycache:inc.pri5_bytes", "ceph_prioritycache:inc_pri5_bytes"},
576 {"prioritycache:inc.pri6_bytes", "ceph_prioritycache:inc_pri6_bytes"},
577 {"prioritycache:inc.pri7_bytes", "ceph_prioritycache:inc_pri7_bytes"},
578 {"prioritycache:inc.pri8_bytes", "ceph_prioritycache:inc_pri8_bytes"},
579 {"prioritycache:inc.pri9_bytes", "ceph_prioritycache:inc_pri9_bytes"},
580 {"prioritycache:inc.reserved_bytes", "ceph_prioritycache:inc_reserved_bytes"},
581 {"prioritycache:kv.committed_bytes", "ceph_prioritycache:kv_committed_bytes"},
582 {"prioritycache:kv.pri0_bytes", "ceph_prioritycache:kv_pri0_bytes"},
583 {"prioritycache:kv.pri10_bytes", "ceph_prioritycache:kv_pri10_bytes"},
584 {"prioritycache:kv.pri11_bytes", "ceph_prioritycache:kv_pri11_bytes"},
585 {"prioritycache:kv.pri1_bytes", "ceph_prioritycache:kv_pri1_bytes"},
586 {"prioritycache:kv.pri2_bytes", "ceph_prioritycache:kv_pri2_bytes"},
587 {"prioritycache:kv.pri3_bytes", "ceph_prioritycache:kv_pri3_bytes"},
588 {"prioritycache:kv.pri4_bytes", "ceph_prioritycache:kv_pri4_bytes"},
589 {"prioritycache:kv.pri5_bytes", "ceph_prioritycache:kv_pri5_bytes"},
590 {"prioritycache:kv.pri6_bytes", "ceph_prioritycache:kv_pri6_bytes"},
591 {"prioritycache:kv.pri7_bytes", "ceph_prioritycache:kv_pri7_bytes"},
592 {"prioritycache:kv.pri8_bytes", "ceph_prioritycache:kv_pri8_bytes"},
593 {"prioritycache:kv.pri9_bytes", "ceph_prioritycache:kv_pri9_bytes"},
594 {"prioritycache:kv.reserved_bytes", "ceph_prioritycache:kv_reserved_bytes"},
595 {"prometheus_collect_duration_seconds_count", "ceph_prometheus_collect_duration_seconds_count"},
596 {"prometheus_collect_duration_seconds_sum", "ceph_prometheus_collect_duration_seconds_sum"},
597 {"purge_queue.pq_executed", "ceph_purge_queue_pq_executed"},
598 {"purge_queue.pq_executing", "ceph_purge_queue_pq_executing"},
599 {"purge_queue.pq_executing_high_water", "ceph_purge_queue_pq_executing_high_water"},
600 {"purge_queue.pq_executing_ops", "ceph_purge_queue_pq_executing_ops"},
601 {"purge_queue.pq_executing_ops_high_water", "ceph_purge_queue_pq_executing_ops_high_water"},
602 {"purge_queue.pq_item_in_journal", "ceph_purge_queue_pq_item_in_journal"},
603 {"rbd_mirror_metadata", "ceph_rbd_mirror_metadata"},
604 {"rgw.cache_hit", "ceph_rgw_cache_hit"},
605 {"rgw.cache_miss", "ceph_rgw_cache_miss"},
606 {"rgw.failed_req", "ceph_rgw_failed_req"},
607 {"rgw.gc_retire_object", "ceph_rgw_gc_retire_object"},
608 {"rgw.get", "ceph_rgw_get"},
609 {"rgw.get_b", "ceph_rgw_get_b"},
610 {"rgw.get_initial_lat_count", "ceph_rgw_get_initial_lat_count"},
611 {"rgw.get_initial_lat_sum", "ceph_rgw_get_initial_lat_sum"},
612 {"rgw.keystone_token_cache_hit", "ceph_rgw_keystone_token_cache_hit"},
613 {"rgw.keystone_token_cache_miss", "ceph_rgw_keystone_token_cache_miss"},
614 {"rgw.lc_abort_mpu", "ceph_rgw_lc_abort_mpu"},
615 {"rgw.lc_expire_current", "ceph_rgw_lc_expire_current"},
616 {"rgw.lc_expire_dm", "ceph_rgw_lc_expire_dm"},
617 {"rgw.lc_expire_noncurrent", "ceph_rgw_lc_expire_noncurrent"},
618 {"rgw.lc_transition_current", "ceph_rgw_lc_transition_current"},
619 {"rgw.lc_transition_noncurrent", "ceph_rgw_lc_transition_noncurrent"},
620 {"rgw.lua_current_vms", "ceph_rgw_lua_current_vms"},
621 {"rgw.lua_script_fail", "ceph_rgw_lua_script_fail"},
622 {"rgw.lua_script_ok", "ceph_rgw_lua_script_ok"},
623 {"rgw.pubsub_event_lost", "ceph_rgw_pubsub_event_lost"},
624 {"rgw.pubsub_event_triggered", "ceph_rgw_pubsub_event_triggered"},
625 {"rgw.pubsub_events", "ceph_rgw_pubsub_events"},
626 {"rgw.pubsub_missing_conf", "ceph_rgw_pubsub_missing_conf"},
627 {"rgw.pubsub_push_failed", "ceph_rgw_pubsub_push_failed"},
628 {"rgw.pubsub_push_ok", "ceph_rgw_pubsub_push_ok"},
629 {"rgw.pubsub_push_pending", "ceph_rgw_pubsub_push_pending"},
630 {"rgw.pubsub_store_fail", "ceph_rgw_pubsub_store_fail"},
631 {"rgw.pubsub_store_ok", "ceph_rgw_pubsub_store_ok"},
632 {"rgw.put", "ceph_rgw_put"},
633 {"rgw.put_b", "ceph_rgw_put_b"},
634 {"rgw.put_initial_lat_count", "ceph_rgw_put_initial_lat_count"},
635 {"rgw.put_initial_lat_sum", "ceph_rgw_put_initial_lat_sum"},
636 {"rgw.qactive", "ceph_rgw_qactive"},
637 {"rgw.qlen", "ceph_rgw_qlen"},
638 {"rgw.req", "ceph_rgw_req"},
639 {"rgw_metadata", "ceph_rgw_metadata"},
640 {"rocksdb.compact", "ceph_rocksdb_compact"},
641 {"rocksdb.compact_queue_len", "ceph_rocksdb_compact_queue_len"},
642 {"rocksdb.compact_queue_merge", "ceph_rocksdb_compact_queue_merge"},
643 {"rocksdb.compact_range", "ceph_rocksdb_compact_range"},
644 {"rocksdb.get_latency_count", "ceph_rocksdb_get_latency_count"},
645 {"rocksdb.get_latency_sum", "ceph_rocksdb_get_latency_sum"},
646 {"rocksdb.rocksdb_write_delay_time_count", "ceph_rocksdb_rocksdb_write_delay_time_count"},
647 {"rocksdb.rocksdb_write_delay_time_sum", "ceph_rocksdb_rocksdb_write_delay_time_sum"},
648 {"rocksdb.rocksdb_write_memtable_time_count", "ceph_rocksdb_rocksdb_write_memtable_time_count"},
649 {"rocksdb.rocksdb_write_memtable_time_sum", "ceph_rocksdb_rocksdb_write_memtable_time_sum"},
650 {"rocksdb.rocksdb_write_pre_and_post_time_count", "ceph_rocksdb_rocksdb_write_pre_and_post_time_count"},
651 {"rocksdb.rocksdb_write_pre_and_post_time_sum", "ceph_rocksdb_rocksdb_write_pre_and_post_time_sum"},
652 {"rocksdb.rocksdb_write_wal_time_count", "ceph_rocksdb_rocksdb_write_wal_time_count"},
653 {"rocksdb.rocksdb_write_wal_time_sum", "ceph_rocksdb_rocksdb_write_wal_time_sum"},
654 {"rocksdb.submit_latency_count", "ceph_rocksdb_submit_latency_count"},
655 {"rocksdb.submit_latency_sum", "ceph_rocksdb_submit_latency_sum"},
656 {"rocksdb.submit_sync_latency_count", "ceph_rocksdb_submit_sync_latency_count"},
657 {"rocksdb.submit_sync_latency_sum", "ceph_rocksdb_submit_sync_latency_sum"}
658};
659
660TEST(Exporter, promethize) {
661 for (auto &test_case : promethize_data) {
662 std::string path = test_case.first;
663 promethize(path);
664 ASSERT_EQ(path, test_case.second);
665 }
666}
667
aee94f69
TL
668TEST(Exporter, check_labels_and_metric_name) {
669 static std::vector<std::pair<std::string, std::string>> counters_data;
670 counters_data.emplace_back("ceph-osd.0", "ceph_osd_numpg");
671 counters_data.emplace_back("ceph-client.rgw.foo.ceph-node-00.hrgsea.2.94739968030880", "ceph_rgw_get");
672
673 static std::vector<labels_t> labels_vec;
674 labels_vec.emplace_back(labels_t{{"ceph_daemon", "\"osd.0\""}});
675 labels_vec.emplace_back(labels_t{{"instance_id", "\"hrgsea\""}});
676 auto counter_data_itr = counters_data.begin();
677 auto labels_vec_itr = labels_vec.begin();
678 for (; counter_data_itr != counters_data.end() && labels_vec_itr != labels_vec.end();
679 ++counter_data_itr, ++labels_vec_itr) {
680 std::string daemon_name = counter_data_itr->first;
681 std::string counter_name = counter_data_itr->second;
682 DaemonMetricCollector &collector = collector_instance();
683 labels_t result = collector.get_extra_labels(daemon_name);
684 ASSERT_EQ(result, *labels_vec_itr);
685 }
686 // test for fail case with daemon_name.size() < 4
687 std::string short_daemon_name = "ceph-client.rgw.foo";
688 std::string counter_name = "ceph_rgw_get";
689 DaemonMetricCollector &collector = collector_instance();
690 labels_t fail_result = collector.get_extra_labels(short_daemon_name);
691 // This is a special case, the daemon name is not of the required size for fetching instance_id.
692 // So no labels should be added.
693 ASSERT_TRUE(fail_result.empty());
694}