Aller au contenu

Supervision

Vuisio expose ses métriques au format Prometheus et fournit un tableau de bord Grafana prêt à l’emploi.

Le SFU expose un endpoint /metrics au format Prometheus. Il est désactivé par défaut : il n’apparaît que si le jeton VUISIO_METRICS_TOKEN est configuré. Les requêtes doivent porter l’en-tête Authorization: Bearer <jeton> (comparaison à temps constant). Sans jeton configuré, l’endpoint répond 404 ; avec un mauvais jeton, 403.

Compteurs (cumuls depuis le démarrage) :

MétriqueMesure
vuisio_packets_received_totalpaquets UDP reçus
vuisio_packets_sent_totalpaquets UDP envoyés aux clients
vuisio_packets_dropped_totalpaquets abandonnés (aucun destinataire)
vuisio_media_forwarded_totalpaquets média retransmis
vuisio_audio_forwarded_totalpaquets audio retransmis
vuisio_rooms_created_totalsalles créées
vuisio_participants_joined_totalparticipants ayant rejoint
vuisio_datachannel_send_failures_totaléchecs d’envoi sur datachannel

Jauges (valeurs instantanées) :

MétriqueMesure
vuisio_rooms_activesalles actives
vuisio_participants_activeparticipants actifs
vuisio_moderators_activemodérateurs actifs
vuisio_cameras_activecaméras activées
vuisio_mics_activemicros activés
vuisio_screen_shares_activepartages d’écran actifs
vuisio_speakers_activesalles avec un orateur actif
vuisio_sfu_threadsnombre de threads SFU
vuisio_max_participants_per_roomplafond de participants par salle
vuisio_process_cpu_seconds_totaltemps CPU du processus
vuisio_process_resident_memory_bytesmémoire résidente
vuisio_process_open_fdsdescripteurs de fichiers ouverts
vuisio_sfu_thread_cpu_seconds_totaltemps CPU par thread SFU (label thread)
vuisio_cross_thread_queue_depthprofondeur de la file inter-threads (label thread)

L’installeur peut déployer une pile de supervision complète (Prometheus + Grafana), désactivée par défaut. Vous l’activez pendant l’installation (ou plus tard avec vuisio reconfigure).

  • Prometheus scrute le SFU (/metrics) toutes les 15 secondes en passant le jeton en bearer, et collecte aussi les métriques de l’hôte (node exporter, process exporter).
  • Grafana charge automatiquement un tableau de bord « Vuisio overview » : vue d’ensemble des salles et participants, caméras et micros, partages d’écran, CPU et RAM par composant et par thread, espace disque, bande passante, files inter-threads, paquets perdus et paquets UDP.
  • Grafana est servi derrière nginx sur le chemin /grafana/, restreint aux plages d’adresses (CIDR) que vous autorisez.

Si vous avez déjà votre propre Prometheus, il suffit de scruter l’endpoint /metrics avec le jeton.