3c4e3de286
We should be able to capture WebRTC stats in some form for post-processing so that it helps on debugging support requests (and other use cases, e.g.: improving field trial analysis on test servers). Although much of WebRTC stats information can be gathered via server side components, none have logs as structured for proper post-processing as the client logs - so we're going the client route for now. Capture WebRTC stats information for audio and screen sharing via: - Audio logCodes: new `stats` extraInfo field - `audio_joined` - `audio_failure` - `sfuaudio_error_retry_through_relay` - `sfuaudio_error_try_to_reconnect` - Screen share logCodes: new `stats` extraInfo field - screenshare_presenter_start_success - screenshare_viewer_start_success - screenshare_broker_failure Additionally, add an option to periodically capture WebRTC stats information for all relevant peers. This is disabled by default since the log can be verbose (and, consequentially, network taxing when using external logging targets). It can be enabled via `public.stats.logMediaStats` in settings.yml. The default interval is 30s. The periodic log format is as follows: - logCode: `mediaStats` - extraInfo.stats: an aggregated stats object of all peers (equivalent to the `Copy` function in the Connection Status modal). |
||
---|---|---|
.. | ||
array-utils.js | ||
browserInfo.js | ||
caseInsensitiveReducer.js | ||
debounce.js | ||
deviceInfo.js | ||
dom-utils.js | ||
fetchStunTurnServers.js | ||
hexInt.js | ||
humanizeSeconds.js | ||
ios-webview-audio-polyfills.js | ||
keyCodes.js | ||
lineEndings.js | ||
logoutRouteHandler.js | ||
media-stream-utils.js | ||
mediaElementPlayRetry.js | ||
mimeTypes.js | ||
regex-weburl.js | ||
sdpUtils.js | ||
slideCalcUtils.js | ||
stats.js | ||
statuses.js | ||
string-utils.js | ||
throttle.js |