Monitoring
Voici une commande permettant de savoir le nombre de réunion en cours, avec le nombre de webcams activées, le nombre de voix...
checksum=$(echo -n "getMeetings"$(bbb-conf --secret | sed -n 's/.*Secret: //p') | sha1sum | sed 's/ -$//') curl -s 'http://127.0.0.1:8090/bigbluebutton/api/getMeetings?checksum='$checksum | perl -lne 'if (/<meetingName>(.*?)</) { $name = $1 } elsif (/<recording>(.*)</) { $count{recording} = $1 eq "true" ? 1 : 0 } elsif (/<(.*?)Count>(.*?)</) { $count{$1} = $2 } elsif (/<\/meeting>/) { print join(" ", map { "$_:$count{$_}" } sort keys %count), " $name"; $total{$_} += $count{$_} foreach keys %count; %count = () } END { print "-" x 90; print join(" ", map { "$_:$total{$_}" } sort keys %total), " total"; }'
(pour voir et tester l'API BigBlueButton, voir https://bigbluebutton.org/api-mate/)
Consommation système
Les composants synchrones gourmands en CPU : kurento et FreeSwitch.
Consommation CPU en fonction du nombre de participants mais aussi du nombre de voix et vidéo : ~2 vCPU pour 100 participants
Exemples :
listener:382 participant:449 recording:?? video:11 voiceParticipant:56 freeswitch:337% kurento-media-s:418%
listener:395 participant:452 recording:?? video:13 voiceParticipant:49 freeswitch:312% kurento-media-s:468%
listener:189 participant:285 recording:18 video:17 voiceParticipant:98 freeswitch:370% kurento-media-s:364%
(les pourcentages sont des pourcentages de vCPU, tels que founis par top ou ps)
A la fin d'un enregistrement, ffmpeg est utilisé et va consommé aussi du CPU, mais de façon asynchrone : sa lenteur retardera uniquement la mise en ligne de l'enregistrement.