WebRTC users know that meetings can get disrupted. Connection issues and media quality issues are rather common. If the WebRTC service is deployed properly, then 90% or more of these issues are due to a user side problem - be it a malfunctioning device or more often than not - poor network connection. This is where WebRTC monitoring comes in.
If you are operating and maintaining a WebRTC service, then you know all too well the ugly reality of dealing with user complaints and trying to assist them in troubleshooting the problems. To keep your service well maintained, there is a need for better monitoring and testing - something that is becoming a critical concern across the industry.
But how should service providers go about monitoring their WebRTC deployments? Here are some key points on how to set up WebRTC monitoring for various environments, what exactly WebRTC service providers should be tracking, and other WebRTC monitoring best practices and tips.
1. Look beyond packet loss and MOS scores
At the end of the day, WebRTC is another VoIP technology. Other solutions predate it, and in many cases, old monitoring paradigms are still adopted for WebRTC applications. One of these is a large focus on packet loss and mean opinion scores (MOS). While these are important metrics, they don’t provide the full story:
- Temporary packet loss in long calls might be missed as they become averaged out in the collected metrics.
- Even with zero packet loss, you might still end up with bad media quality. Issues around the devices used, media servers, telephony traffic, available bitrate, etc. can all lead to degradation in quality, without a distinctly high packet loss metric.
A good WebRTC monitoring system will collect and visualize a lot more than just packet loss and MOS scores. WebRTC offers a rich and comprehensive set of metrics. These can be used to troubleshoot and investigate issues and to pinpoint root causes and identify solutions. Many of these metrics directly affect things like packet loss and MOS scores while others can indicate other unrelated problems.
2. Adopt edge metric collection mindset
VoIP monitoring systems were traditionally designed and built for the on-premise, office based world. In today’s cloud environments, where employees, agents and users are working from home, our ability to control and intimately know every faucet of the solution and network end-to-end is all but impossible.
Older VoIP monitoring systems relied heavily on monitoring the media servers. They collected traffic on the infrastructure and office sides. And this was used to figure out potential issues. In today’s world, each user has their own office, using their own personal device, from within their home network, or even worse - from an internet cafe or hotel room.
Modern WebRTC monitoring solutions are built with the understanding that the metrics need to be collected from the edges - directly from the users’ devices. This gives a much better understanding of the real world media quality. And it offers the ability to provide better troubleshooting options.
3. Integrate automated testing into your CI/CD pipeline
Continuous integration and continuous deployment (CI/CD) pipelines should include automated testing at every step. For WebRTC this is imperative, as the control you have over the whole WebRTC pipeline is minimal. For example, browsers are upgraded and updated by the browser vendors, commonly at a breakneck monthly cadence. These regular updates may and often do break services.
By setting up automated testing in your CI/CD pipeline, you enable an efficient and quick way to validate new versions of your service as well as new browser versions. The tests conducted can include end-to-end tests, stress testing and functional testing.
4. Empower users to self diagnose and fix issues
A lot of the issues you will be facing are going to be user problems with their device or network. If your WebRTC application has been built and deployed correctly - the majority of issues will be user side problems.
As your service grows and more users make use of it, the load on your support will grow in tandem, causing a real strain on your operational costs.
This is why WebRTC monitoring needs to also empower the end users to self-diagnose their own issues and assist them in fixing these. Powerful diagnostic capabilities can be embedded directly into the WebRTC application’s workflow.
5. Use your WebRTC monitoring to review business goals as well
The data gleaned in a WebRTC session by monitoring the edge is useful for operational purposes. However, it can also assist in reviewing and measuring business goals.
When used correctly, correlating and enriching the dataset created with business metrics can be a powerful way of obtaining access to data at a more granular level.
You should ensure that your WebRTC monitoring system enables enrichment and inclusion of custom related metrics and events. This allows you to make use of this information to measure and track your key business performance indicators whenever possible.
6. Choose your API monitoring solutions carefully
When you’re choosing between WebRTC monitoring solutions, it may help to consider the following points:
- In-house, homegrown monitoring tools are great. But, the challenge with them is the need to continually maintain and improve them over time. This ongoing work is sometimes out of the core focus of the company, which makes continued investments unfeasible.
- Active and passive monitoring: Make sure the tools you use enable you to monitor and measure real user performance (passive monitoring), as well as conduct independent, automated testing (active monitoring). Each of these capabilities has advantages and downsides and employing them both will give you the best of both worlds.
- Collection, analysis and visualization: A good WebRTC monitoring tool will not only collect and aggregate the data, but also analyze and visualize it. The best tools will also recommend solutions and point you towards root causes for any issues.
7. Talk to us for more WebRTC monitoring insights
There’s a lot more to be said about WebRTC monitoring. If you are looking for more insights on this subject, come talk to us.
We offer our own set of WebRTC testing and monitoring solutions that you are bound to be interested in. So make sure to schedule a demo and we’ll show you around.