* feat(rtcstats): add rtcstats support * chore(rtcstats): update users.json to use placeholder password * chore(rtcstats): update RTCSTATS_STORE_LOGS in env.example * chore(rtcstats): add expose ports * feat(rtcstats): add mongodb support * docs(rtcstats): add readme for mongodb integration * chore(rtcstats): fix readme * feat(rtcstats): add grafana dashboard for prometheus metrics * chore(rtcstats): update readme * chore(rtcstats): fix readme * chore(rtcstats): add troubleshooting to localstack readme * fix(rtcstats): improve accuracy of dashboard graphs * fix(rtcstats): fix typo in dashboard display name * fix(rtcstats): simplify and clean up localstack configuration * docs(rtcstats): improve localstack readme --------- Co-authored-by: Andrei Gavrilescu <51706180+andrei-gavrilescu@users.noreply.github.com>
84 lines
2.1 KiB
Markdown
84 lines
2.1 KiB
Markdown
# Meeting stats with rtcstats
|
|
|
|
## Overview
|
|
|
|
This project demonstrates how to use rtcstats with Jitsi Meet to gather detailed information about meeting quality and logs.
|
|
|
|
## Getting Started
|
|
|
|
### Setup
|
|
|
|
1. **Update Jitsi Meet Docker Compose Configuration**
|
|
|
|
Edit `.env` in your `docker-jitsi-meet` directory to enable rtcstats.
|
|
```
|
|
#
|
|
# rtcstats integration
|
|
#
|
|
|
|
# Enable rtcstats analytics (uncomment to enable)
|
|
RTCSTATS_ENABLED=true
|
|
|
|
# Send the console logs to the rtcstats server
|
|
RTCSTATS_STORE_LOGS=false
|
|
|
|
# The interval at which rtcstats will poll getStats, defaults to 10000ms.
|
|
RTCSTATS_POLL_INTERVAL=10000
|
|
|
|
# Send the SDP to the rtcstats server
|
|
RTCSTATS_SEND_SDP=true
|
|
|
|
```
|
|
|
|
2. **Configure rtcstats**
|
|
|
|
Copy the example environment files and edit them according to your environment.
|
|
```shell
|
|
docker-jitsi-meet/rtcstats$ cp env.example .env
|
|
docker-jitsi-meet/rtcstats$ cp ./rtcstats-server/env.example ./rtcstats-server/.env
|
|
docker-jitsi-meet/rtcstats$ cp ./rtc-visualizer/env.example ./rtc-visualizer/.env
|
|
```
|
|
|
|
Next, edit `rtc-visualizer/.data/users.json` to add your users. The default credential is `admin:CHANGE_ME`.
|
|
```json
|
|
{
|
|
"Alice": "XXX",
|
|
"Bob": "YYY"
|
|
}
|
|
```
|
|
|
|
4. **Run Docker Compose**
|
|
|
|
From your `docker-jitsi-meet` directory, run the following command to start all services.
|
|
```shell
|
|
docker compose -f docker-compose.yml -f rtcstats.yml up -d
|
|
```
|
|
|
|
|
|
## Usage
|
|
|
|
1. **View RTC Visualizer**
|
|
|
|
Open [https://localhost:8443/rtc-visualizer](https://localhost:8443/rtc-visualizer) (or `PUBLIC_URL/rtc-visualizer`) in your browser.
|
|
|
|
## Monitoring with Prometheus
|
|
|
|
1. **Update Prometheus Configuration**
|
|
|
|
Add the rtcstats-server endpoint to `prometheus/prometheus.yml`.
|
|
```yml
|
|
scrape_configs:
|
|
- job_name: "prometheus"
|
|
# ... other configurations
|
|
static_configs:
|
|
- targets: ["...","rtcstats-server:8095"]
|
|
```
|
|
|
|
2. **Run Docker Compose**
|
|
|
|
Restart your environment with the `prometheus.yml` and `grafana.yml` files to launch the monitoring services.
|
|
|
|
```shell
|
|
docker compose -f docker-compose.yml -f rtcstats.yml -f prometheus.yml -f grafana.yml up -d
|
|
```
|