cast(MetricCounter, sum_metric).add(duration, (method_name,))
cast(MetricCounter, count_metric).add(1, (method_name,))
+ def get_pg_repaired_objects(self) -> None:
+ dump = self.get('pg_dump')
+ for stats in dump['pool_stats']:
+ path = f'pg_objects_repaired{stats["poolid"]}'
+ self.metrics[path] = Metric(
+ 'counter',
+ 'pg_objects_repaired',
+ 'Number of objects repaired in a pool Count',
+ ('poolid',)
+ )
+
+ self.metrics[path].set(stats['stat_sum']['num_objects_repaired'],
+ labelvalues=(stats['poolid'],))
+
@profile_method(True)
def collect(self) -> str:
# Clear the metrics before scraping
self.get_mgr_status()
self.get_metadata_and_osd_status()
self.get_pg_status()
+ self.get_pg_repaired_objects()
self.get_num_objects()
for daemon, counters in self.get_all_perf_counters().items():