Monitoring RTMP Streaming Performance
A live stream can appear fine from OBS while viewers are struggling with buffering, dropped frames or delayed playback. Monitoring helps you catch problems before they ruin an event. On Ubuntu, you should monitor the server, the stream process and the viewer experience.
Step 1: Watch CPU and memory using:
top or htop
Step 2: Check disk space:
df -h
Step 3: Check bandwidth and network activity. Tools such as iftop, nload or hosting-provider graphs can show whether traffic is spiking.
Step 4: Review Nginx logs:
sudo tail -f /var/log/nginx/error.log
and
sudo tail -f /var/log/nginx/access.log
Step 5: Test the stream as a real viewer. Open the website player on a phone, laptop and mobile data connection.
Step 6: Watch OBS stats. Dropped frames caused by network issues normally point to the broadcaster’s upload connection, not necessarily the server.
Step 7: Check HLS segment creation. If .m3u8 and segment files are not updating, the ingest may have stopped or Nginx may not have permission to write.
Step 8: Record baseline numbers when the stream is healthy. This gives you something to compare against during problems.
For professional streaming, do not rely on one screen saying “online.” Monitor the full chain: encoder, RTMP ingest, Nginx service, HLS output, web player and viewer reports. Most streaming faults happen somewhere in that chain, and good monitoring helps you locate the weak point quickly.
Hosting tip: For Online Audience style hosting guides, remind users to test changes outside busy broadcast times, keep a backup of the last working configuration, and avoid exposing admin services publicly. A clear checklist, sensible firewall rules and careful bitrate choices will prevent most support issues before they happen.