View Source Membrane.RTC.Engine.TimescaleDB (Membrane RTC Engine TimescaleDB plugin v0.2.0)

Allows to store Membrane.RTC.Engine metrics reports in a database.

Link to this section Summary

Functions

Stores Membrane.RTC.Engine metrics report in the database using :repo module passed in Application environment.

Link to this section Types

@type report() :: %{
  optional({:room_id, binary()}) => %{
    optional({:peer_id, binary()}) => %{
      required({:track_id, binary()}) => %{
        "inbound-rtp.encoding": atom(),
        "inbound-rtp.ssrc": integer(),
        "inbound-rtp.bytes_received": integer(),
        "inbound-rtp.keyframe_request_sent": integer(),
        "inbound-rtp.packets": integer(),
        "inbound-rtp.frames": integer(),
        "inbound-rtp.keyframes": integer()
      },
      "ice.binding_requests_received": integer(),
      "ice.binding_responses_sent": integer(),
      "ice.bytes_received": integer(),
      "ice.bytes_sent": integer(),
      "ice.packets_received": integer(),
      "ice.packets_sent": integer()
    }
  }
}

Link to this section Functions

@spec store_report(report()) :: :ok

Stores Membrane.RTC.Engine metrics report in the database using :repo module passed in Application environment.