From c3e44c4d8cb25b635d7cc408c848afc4308fe3f9 Mon Sep 17 00:00:00 2001 From: Thierry Kauffmann Date: Thu, 16 Nov 2023 16:20:05 +0100 Subject: [PATCH] Add max meetings participants gauge --- bbb-exporter/collector.py | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/bbb-exporter/collector.py b/bbb-exporter/collector.py index da1cf11..d2cad64 100644 --- a/bbb-exporter/collector.py +++ b/bbb-exporter/collector.py @@ -63,6 +63,7 @@ def collect(self): yield self.metric_meetings(meetings) yield self.metric_participants(meetings) + yield self.metric_participants_max(meetings) yield self.metric_meetings_listeners(meetings) yield self.metric_meetings_voice_participants(meetings) yield self.metric_meetings_video_participants(meetings) @@ -122,6 +123,13 @@ def metric_participants(self, meetings): metric.add_metric([], no_participants) return metric + def metric_participants_max(self, meetings): + no_participants = reduce(lambda max, meeting: int(meeting['participantCount']) if int(meeting['participantCount']) > max else max, meetings, 0) + metric = GaugeMetricFamily('bbb_meetings_participants_max', + "Maximum number of participants in all BigBlueButton meetings") + metric.add_metric([], no_participants) + return metric + def metric_meetings_listeners(self, meetings): no_listeners = reduce(lambda total, meeting: total + int(meeting['listenerCount']), meetings, 0) metric = GaugeMetricFamily('bbb_meetings_listeners',