Observer collects samples from monitors. Based on the received samples, the observer:

  • Identify calls
  • Create events (call started, call ended, client joined, client left, etc.)
  • Match clients' inbound-rtp sessions with remote clients' outbound-rtp sessions
  • Match SFUs RTP sessions with browser-side clients' in-, and outbound-rtp sessions.

The Observer creates reports and forwards them for further processing.


Observer instances can share data through their hazelcast in-memory database grid. To scale observer horizontally you need to configure the underlying hazelcast so that observer instances can see each other.


See deployments.

Upgrade Observer

Since observer uses IMDG to store its object-hierarchy you need to to ensure a gradual upgrading process. The upgrading process should not shut down more instances at one time than a number of backup configured for the IMDG to keep. In kubernetes this can be achieved by a a rolling update.


The description for observer configuration can be found here.

Edit this page on GitHub