文章目录
-
- 1、打开调试工具
- 2、导出调试信息
- 3、切换获取统计信息的方式
- 4、相关统计信息
-
- 4.1 获取用户媒体设备请求(`GetUserMedia Request`)
- 4.2 通道(`RTCPeerConnection`)列表
- 4.3 查看每个通道(`RTCPeerConnection`)的信息
-
- 4.3.1 查看事件信息
- 4.3.2 查看统计信息
- 4.3.3 统计数据说明(样例)
-
- `RTCPeerConnection (peer-connection)`
- `RTCTransport_0_1 (transport)`
- `RTCCertificate_XXX (certificate)`
- `RTCIceCandidatePair_XXX (candidate-pair)`
- `RTCIceCandidate_XXX (remote-candidate)`
- `RTCIceCandidate_XXX (local-candidate)`
- `RTCAudioSource_XXX (media-source)`
- `RTCVideoSource_XXX (media-source)`
- `RTCMediaStream_XXX (stream)`
- `RTCOutboundRTPAudioStream_XXX (outbound-rtp)`
- `RTCOutboundRTPVideoStream_XXX (outbound-rtp)`
- `RTCInboundRTPAudioStream_XXX (inbound-rtp)`
- `RTCInboundRTPVideoStream_XXX (inbound-rtp)`
- `RTCRemoteInboundRtpAudioStream_XXX (remote-inbound-rtp)`
- `RTCRemoteInboundRtpVideoStream_XXX (remote-inbound-rtp)`
- `RTCMediaStreamTrack_sender_XXX (track)`
- `RTCMediaStreamTrack_receiver_XXX (track)`
- 4.4 统计信息关系图
- 4.5 W3C标准文档
1、打开调试工具
打开Chrome浏览器,在地址栏输入chrome://webrtc-internals/
即可打开调试工具,如下图所示
Edge 83及以上版本已采用Chromium作为内核,在Edge浏览器上也可以在地址栏输入edge://webrtc-internals/
打开调试工具,如下图所示
2、导出调试信息
如下图,点击Create Dump
即可展开,进行导出调试信息的操作
若需要调试声音,可以勾选 Enable diagnostic audio recordings
最后点击 Download the PeerConnection updates and stats data
按钮,下载相关的统计信息
3、切换获取统计信息的方式
可以在Read Stats From
处,切换获取统计信息的方式
- Standardized (promise-based) getStats() API,通过标准的(基于promise)getStats API获取
- Legacy Non-Standard (callback-based) getStats() API,通过遗留的非标准的(基于回调)getStats API获取
一般使用默认的选择,即通过标准API获取即可
4、相关统计信息
4.1 获取用户媒体设备请求(GetUserMedia Request
)
如下图所示,点击GetUserMedia Request
字样的区块,可以看到最近浏览器请求获取用户媒体设备权限的日志,可以看到每次请求获取用户媒体设备权限的时间、来源URL及音视频参数等信息
4.2 通道(RTCPeerConnection
)列表
如下图所示,除GetUserMedia Request
外的其它区块就是通道列表,每个区块都是一个RTCPeerConnection
通道,可以通过点击每个区块查看每个通道的事件过程及统计信息。
我们的应用使用了4个通道,可以从上图看到,他们依次是:
- 第一个主流发送通道
- 第二个主流接收通道
- 第三个辅流发送通道
- 第四个辅流接收通道
4.3 查看每个通道(RTCPeerConnection
)的信息
4.3.1 查看事件信息
若调试工具webrtc-internals
先于应用页面开启,则如下图所示,可以看到完整的事件过程,每个事件都可以展开查看详细内容,从中可以跟踪相关事件信息及SDP信息
若调试工具webrtc-internals
晚于应用页面开启,则只能看到应用页面后续的事件信息,不能看到之前的事件信息。
如果想看到完整的事件过程,打开调试工具webrtc-internals
后,再打开应用页面,若应用页面已打开,则刷新重新加载页面即可。
4.3.2 查看统计信息
如下图所示,每个通道都有Stats Tables
统计信息,每个信息都可以展开查看详细内容,分为两部分:
- 统计数据
- 统计图表(
Stats graphs for ...
字样开头的信息)
4.3.3 统计数据说明(样例)
RTCPeerConnection (peer-connection)
名称 | 数值 |
---|---|
timestamp | 2020/7/28 下午6:30:33 |
dataChannelsOpened | 0 |
dataChannelsClosed | 0 |
RTCTransport_0_1 (transport)
名称 | 数值 |
---|---|
timestamp | 2020/7/28 下午6:32:03 |
bytesSent | 39391140 |
[bytesSent_in_bits/s](发送比特率) | 45805.813414400436 |
bytesReceived | 5538693 |
[bytesReceived_in_bits/s](接收比特率) | 4676.677453498226 |
dtlsState(DTLS状态) | connected |
selectedCandidatePairId | RTCIceCandidatePair_p0AAYh7Z_Tf02029O |
localCertificateId | RTCCertificate_97:01:5C:9A:03:E5:38:E6:FE:8B:9A:2C:F7:29:FC:3D:2B:86:61:77:FB:1D:B0:9E:AD:AD:D5:05:E5:F9:8A:90 |
remoteCertificateId | RTCCertificate_D9:AF:1E:93:28:D0:64:F3:14:5D:81:3E:BF:F4:61:1E:D1:68:AE:CA |
tlsVersion | FEFD |
dtlsCipher | TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305_SHA256 |
srtpCipher | AEAD_AES_256_GCM |
selectedCandidatePairChanges | 1 |
RTCCertificate_XXX (certificate)
名称 | 数值 |
---|---|
timestamp | 2020/7/28 下午5:24:20 |
fingerprint(指纹秘钥) | 97:01:5C:9A:03:E5:38:E6:FE:8B:9A:2C:F7:29:FC:3D:2B:86:61:77:FB:1D:B0:9E:AD:AD:D5:05:E5:F9:8A:90 |
fingerprintAlgorithm(指纹秘钥算法) | sha-256 |
base64Certificate | MIIBFjCBvaADAgECAgkAwy9aOlMkpPAwCgYIKoZIzj0EAwIwETEPMA0GA1UEAwwGV2ViUlRDMB4XDTIwMDcyNzA3NDEyNFoXDTIwMDgyNzA3NDEyNFowETEPMA0GA1UEAwwGV2ViUlRDMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEaZqMEhK&# |